Blame cpp-test/test-t/n_13_7.c

Packit Service 8bf002
/* n_13_7.c:    Short-circuit evaluation of #if expression. */
Packit Service 8bf002
Packit Service 8bf002
/* 13.7:    10/0 or 10/MACRO_0 are never evaluated, "divide by zero" error
Packit Service 8bf002
        cannot occur.   */
Packit Service 8bf002
#define MACRO_0     0
Packit Service 8bf002
Packit Service 8bf002
/*  Valid block */
Packit Service 8bf002
#if     0 && 10 / 0
Packit Service 8bf002
    Block to be skipped
Packit Service 8bf002
#endif
Packit Service 8bf002
#if     not_defined && 10 / not_defined
Packit Service 8bf002
    Block to be skipped
Packit Service 8bf002
#endif
Packit Service 8bf002
#if     MACRO_0 && 10 / MACRO_0 > 1
Packit Service 8bf002
    Block to be skipped
Packit Service 8bf002
#endif
Packit Service 8bf002
#if     MACRO_0 ? 10 / MACRO_0 : 0
Packit Service 8bf002
    Block to be skipped
Packit Service 8bf002
#endif
Packit Service 8bf002
#if     MACRO_0 == 0 || 10 / MACRO_0 > 1
Packit Service 8bf002
    Valid block
Packit Service 8bf002
#else
Packit Service 8bf002
    Block to be skipped
Packit Service 8bf002
#endif
Packit Service 8bf002
Packit Service 8bf002
/* { dg-do preprocess }
Packit Service 8bf002
   { dg-options "-ansi -w" }
Packit Service 8bf002
   { dg-final { if ![file exist n_13_7.i] { return }                    } }
Packit Service 8bf002
   { dg-final { if \{ [grep n_13_7.i "Valid block"] != ""       \} \{   } }
Packit Service 8bf002
   { dg-final { return \}                                               } }
Packit Service 8bf002
   { dg-final { fail "n_13_7.c: short-circuit evaluation of #if expression" } }
Packit Service 8bf002
 */
Packit Service 8bf002