Blob Blame History Raw
/* n_1.c:   Conversion of trigraph sequences.   */

#include    "defs.h"

char    quasi_trigraph[] = { '?', '?', ' ', '?', '?', '?', ' ', '?', '?', '%',
            ' ', '?', '?', '^', ' ', '?', '#', '\0' };

main( void)
{
    int     ab = 1, cd = 2;

    fputs( "started\n", stderr);

/* 1.1: The following 9 sequences are valid trigraph sequences. */
    assert( strcmp( "??( ??) ??/??/ ??' ??< ??> ??! ??- ??="
            ,"[ ] \\ ^ { } | ~ #") == 0);

/* 1.2: In directive line.  */
??= define  OR( a, b)   a ??! b
    assert( OR( ab, cd) == 3);

/* 1.3: Any sequence other than above 9 is not a trigraph sequence. */
    assert( strcmp( "?? ??? ??% ??^ ???=", quasi_trigraph) == 0);

    fputs( "success\n", stderr);
    return  0;
}