Description of problem: preprocessor fail with error on #define TEST(name) name##::B() with error message test10.cxx:13:17: pasting "C" and "::" does not give a valid preprocessing token Version-Release number of selected component (if applicable): gcc-3.3-12 How reproducible: Every time Steps to Reproduce: 1. g++ -c test10.cpp -o test10.o 2. 3. Actual results: we have the following error test10.cxx:13:17: pasting "C" and "::" does not give a valid preprocessing token Expected results: The macro used to succeed in performing the collate when follow by :: Additional info: see test case attachment
Created attachment 92878 [details] c++ testcase
Your testcase is buggy, please read ISO C++ 98. If you remove ## from the testcase, it should work just fine.