This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: problems with compiler differences between version 3.3.5 and 4.0.2
On Thu, Feb 02, 2006 at 08:46:13AM -0800, Brian Budge wrote:
> It seems like in this case, this should work... Usually this error is
> found in conjunction with templates, at least in my experience.
>
> I don't know the actual reason why g++ stopped being able to recognize
> these kinds of types (I bet it has something to do with the
> standard... anyone?), but the fix is usually easy...
>
> try
> typename A a;
>
> Brian
>
> On 2/2/06, Christian Weckmueller <cris.tian@web.de> wrote:
> > Hello dear gcc-helper,
> >
> > I have a program without problems compiling with 3.3.5 but don't work with
> > 4.0.2.
> >
> > there is on class A and another on B
> > so B has a datamember an object of A, like this
> >
> > class A{
> > ...
> > };
> >
> > class B{
> > ...
> > A a; <<<<<<<
> >
> > };
> >
> > The compiler answers that:
> >
> > file linenumber: A does not name a type
> >
I think here the problem is that the above description is not
accurate; Brian's guess would work if A is a qualified dependent name in B
(and then the above description would be misleading ---
there is a big difference between A and X::A).
Oliver