public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: Juan Carlos Arevalo-Baeza <jcab@JCABs-Rumblings.com>
To: nobody@gcc.gnu.org
Cc: gcc-prs@gcc.gnu.org,
Subject: Re: c++/8442: Wrongful compiler error - file available
Date: Mon, 04 Nov 2002 08:56:00 -0000	[thread overview]
Message-ID: <20021104165602.556.qmail@sources.redhat.com> (raw)

The following reply was made to PR c++/8442; it has been noted by GNATS.

From: Juan Carlos Arevalo-Baeza <jcab@JCABs-Rumblings.com>
To: <bangerth@dealii.org>, <gcc-bugs@gcc.gnu.org>,
	<gcc-prs@gcc.gnu.org>, <jcab@JCABs-Rumblings.com>,
	<nobody@gcc.gnu.org>, <gcc-gnats@gcc.gnu.org>,
	<gcc-bugs@gcc.gnu.org>, <gcc-prs@gcc.gnu.org>, <nobody@gcc.gnu.org>
Cc:  
Subject: Re: c++/8442: Wrongful compiler error - file available
Date: Mon, 4 Nov 2002 08:48:05 -0800

 On 4 Nov 2002 15:55:11 -0000, bangerth@dealii.org wrote:
 >Synopsis: Wrongful compiler error - file available
 >
 >I can confirm the messages on Linux from your preprocessed
 >sources, but it is very hard to tell whether they are justfied
 >or not, as the file has some 59,000 lines and invokes all
 >kinds of template stuff (not that I would be unused to that
 >but this seems messy).
 
    Yes, Spirit is a complex beast. I'm sorry about that. I've=
  tried extracting the error bits, but I've been uncuccessful so=
  far. It seems to me that something in the chain of template=
  instantiations is fooling the compiler into thinking that either=
  brace_block_functor is not in scope, or something like that.
 
 >Could you try to condense the
 >problem into a smaller testcase where it is simpler to
 >see whether the error is justified or not?
 
    Maybe I can condense the error as I see it here. The code=
  looks like this:
 
 (line 2304.cpp, line 60573.ii)
 template < typename ParserT >
 static
 functor_parser<this_t::brace_block_functor<ParserT> >
 brace_block(ParserT const& parser) {
     return brace_block_functor<ParserT>(parser);
 };
 
 functor_parser is a template class that takes a single type=
  parameter, and can be implicitly constructed from that type.=
  Defined in line 50729.ii.
 
 brace_block_functor is defined in the same scope as the=
  brace_block file above, as a template class that takes a single=
  template parameter.
 
 this_t is the current scope (class scope), but it is=
  inconsequential (it was a test trying to track down this=
  problem). You get the same error without it.
 
    For some reason, according to the error messages, the compiler=
  thinks that brace_block_functor should be a type, instead of a=
  template.
 
    I tried generating similar situations using simpler code,=
  without success. The problem is that the call to this function=
  is generated kind of deep into the template instantiations, and=
  extracting the call doesn't seem to show the problem.
 
    I'll keep trying. Thanx!
 
 =A0=A0=A0Salutaciones,
 =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0JCAB
 email: jcab@JCABs-Rumblings.com
 ICQ: 10913692 @WORK: 101728263
 WWW: http://www.JCABs-Rumblings.com
 


             reply	other threads:[~2002-11-04 16:56 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-04  8:56 Juan Carlos Arevalo-Baeza [this message]
  -- strict thread matches above, loose matches on Subject: below --
2002-11-05  6:46 Reichelt
2002-11-05  0:36 Juan Carlos Arevalo-Baeza
2002-11-04  8:56 Wolfgang Bangerth
2002-11-04  7:55 bangerth
2002-11-03 17:56 jcab

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20021104165602.556.qmail@sources.redhat.com \
    --to=jcab@jcabs-rumblings.com \
    --cc=gcc-prs@gcc.gnu.org \
    --cc=nobody@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).