Run this with "preproff -DYES -DYES_TOO" -- otherwise the strings won't be defined as expected.
#if ( YES && YES_TOO )
1	This should print.
#endif
#if ( YES ^ ( ! YES_TOO ) )
2	This should print.
#endif
#if ( YES ^ ( ! YES_TOO ) )
3	This should print.
#endif
#if YES_TOO && ! DUMMY && YES 
4	This should print.
#endif
#if ( ! /* comment here*/ DUMMY )
5	This should print.
#endif
#ifndef( ( ( DUMMY )))
6	This should print.
#endif
#ifdef ! DUMMY ^ ! YES_TOO
7	This should print.
#endif
#if !! DUMMY || YES_TOO
8	This should print.
#endif
#if ( ! (! YES_TOO ) /* next comment	*/)	
9	This should print -- last printing line.
#endif
#if ! DUMMY && ! YES_TOO
A	This should NOT print.
#endif
#if ( YES_TOO ^ (YES))
B	This should NOT print.
#endif
#ifndef ( YES_TOO ^ (!YES))
C	This should NOT print.
#endif
#if ( ! ( YES_TOO ) /* next comment	*/)	
C	This should NOT print.
#endif
Done.
