27 lines
643 B
C
Raw Normal View History

/* n_22.c: Tokenization of preprocessing number. */
#include "defs.h"
#define str( a) # a
#define xstr( a) str( a)
#define EXP 1
main( void)
{
fputs( "started\n", stderr);
/* 22.1: 12E+EXP is a preprocessing number, EXP is not expanded. */
assert( strcmp( xstr( 12E+EXP), "12E+EXP") == 0);
/* 22.2: .2e-EXP is also a preprocessing number. */
assert( strcmp( xstr( .2e-EXP), ".2e-EXP") == 0);
/* 22.3: + or - is allowed only following E or e, 12+EXP is not a
preprocessing number. */
assert( strcmp( xstr( 12+EXP), "12+1") == 0);
fputs( "success\n", stderr);
return 0;
}