lightw@cetra.trl.OZ.AU (Liron Lightwood) (06/25/91)
We are having some problems with the Texas Instruments COOL C Preprocessor (the one which has templates and parameterised types). The problem typically arises when trying to compile libraries (eg InterViews) which prepend a prefix to internal classnames to limit namespace polution. The problem can be demonstrated by passing the following file through the COOL Preprocessor. -------------------------------------------------------- #define Coord www(Coord) #define www(qqq) iv##qqq www(Coord); Coord; ------------------- end of file ## represents token concatination as proposed for the draft ANSI C standard. These libraries expect cpp to behave in such a way as to produce the following output from this file. ivCoord; ivCoord; However, the COOL C Preprocessor produces the following results: ivivCoord; ivCoord; which is not desired. What is causing this problem, and how can it be cured? Another question is why does the first expression stop at ivivCoord, why not iviviviviviv........? thanks in advance. Liron Lightwood Internet : r.lightwood@trl.oz.au Telecom Research Laboratories Phone : +61 3 541 6658 770 Blackburn Road Snail : P.O. Box 249 Clayton 3168 Australia Clayton Vic. 3168 Australia Disclaimer : My views are not my company's?