Try again: #define BEGIN { #define END ; } #define IF if ( #define THEN ) { #define ELSE ; } { There is no ENDIF in Pascal, and the END above will suffice; Pascal does not permit a semicolon in front of an ELSE, so in the case of, for example: IF boolExpr THEN WRITELN('true') ELSE WRITELN('false'); 1. You need to compensate for the missing semicolon before the ELSE 2. You need to recognize the ' as a STRING delimiter, instead of just a character 3. You need to provide for WRITELN (a library function?) etc... So C cannot do a COMPLETE Pascal play-along. And what about TYPE, VAR, NESTED PROCEDURES AND FUNCTIONS, well-structured UNITs/MODULEs, etc... --- François_Revol <revol@xxxxxxx> wrote: > Besides... > #define BEGIN { > #define END } > #define IF if ( > #define THEN ) { > #define else } else { > #define ENDIF } > guess who is superior now ? > (believe me, I actually saw it in the source code of a BeOS driver !) ===== ======= Frank D. Engel, Jr. Modify the equilibrium of the vertically-oriented particle decelerator to result in the reestablishment of its resistance to counterproductive atmospheric penetration. __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com