problem with pasting two tokens together in gcc 3.4

Deepak Soi sdeepak@cadence.com
Wed May 18 07:10:00 GMT 2005


Hi,       
       Yes, you are right problem we are facing is with pasting two 
tokens together, but what I am unable to understand is why its compiling 
properly with older gcc versions. Is there any change in gcc3.4 handling 
of macros.I will be thankful for your help on this.

======================================================================
Error

 find.cxx:723:1: pasting "DbNet" and "*" does not give a valid 
preprocessing token.

  find.cxx:723:1: pasting "Net" and "*" does not give a valid
preprocessing token.
  find.cxx:723:1: pasting "FindFromDbNet" and "(" does not give a
valid preprocessing token.

=====================================================================

regards
Deepak Soi




Ian Lance Taylor wrote:

>Deepak Soi <sdeepak@cadence.com> writes:
>
>  
>
>>       I am getting a compilation error with gcc3.4. Is there some
>>special handling of macros in gcc3.4 as all these lines are calling
>>macros . It will be really nice if somebody helps out, I am struck.
>>==============================================================
>>  find.cxx:723:1: pasting "DbNet" and "*" does not give a valid
>>preprocessing token.
>>  find.cxx:723:1: pasting "Net" and "*" does not give a valid
>>preprocessing token.
>>  find.cxx:723:1: pasting "FindFromDbNet" and "(" does not give a
>>valid preprocessing token.
>>==================================================================
>>    
>>
>
>Sounds like invalid use of ##, which is used to paste two tokens
>together into a single token.  The problem is going to be somewhere
>inside your macro definitions.  Perhaps you are simply using an
>inappropriate argument to your macro.  It's impossible to say much
>more without an example.
>
>Ian
>  
>





More information about the Gcc-help mailing list