problems with compiler differences between version 3.3.5 and 4.0.2
Christian Weckmüller
cris.tian@web.de
Thu Feb 2 20:54:00 GMT 2006
meanwhile i found that the compiler means it does not know the type A,
it seems clear, but older versions gave a better understandable message.
Something like this:
you use 'A' as a type, but it's not defined yet
and it was pretty clear that the compiler doesn't know A.
and SORRY but the example is picked from a much more complex case and it
was not the way that class A was already defined. But i don't understand
this errormessage.
Thanks, cris
Brian Budge schrieb:
> 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
>>
>
>
More information about the Gcc-help
mailing list