18c3a4ac0f
From-SVN: r24256
44 lines
771 B
C
44 lines
771 B
C
/* Basic tests of the #assert preprocessor extension. */
|
|
|
|
#define fail int fail
|
|
|
|
#assert abc (def)
|
|
#assert abc (ghi)
|
|
#assert abc (jkl)
|
|
#assert space ( s p a c e )
|
|
|
|
/* Basic: */
|
|
#if !#abc (def) || !#abc (ghi) || !#abc (jkl)
|
|
fail
|
|
#endif
|
|
|
|
/* any answer for #abc */
|
|
#if !#abc
|
|
fail
|
|
#endif
|
|
|
|
/* internal whitespace is collapsed,
|
|
external whitespace is deleted */
|
|
#if !#space (s p a c e) || !#space ( s p a c e ) || #space (space)
|
|
fail
|
|
#endif
|
|
|
|
/* removing assertions */
|
|
#unassert abc (jkl)
|
|
#if !#abc || !#abc (def) || !#abc (ghi) || #abc (jkl)
|
|
fail
|
|
#endif
|
|
|
|
#unassert abc
|
|
#if #abc || #abc (def) || #abc (ghi) || #abc (jkl)
|
|
fail
|
|
#endif
|
|
|
|
int gobble
|
|
|
|
/* make sure it can succeed too.
|
|
also check space before open paren isn't significant */
|
|
#if #space(s p a c e)
|
|
;
|
|
#endif
|