view gcc/testsuite/gcc.dg/cpp/trad/assert1.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
line wrap: on
line source

/* Basic tests of the #assert preprocessor extension. */
/* { dg-do compile } */
/* { dg-options "-Wno-deprecated" } */

#define def unused expansion
#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