Blame test-c/n_3.c

Packit Service 8bf002
/* n_3.c:   Handling of comment.    */
Packit Service 8bf002
Packit Service 8bf002
#include    "defs.h"
Packit Service 8bf002
Packit Service 8bf002
#define str( a)     # a
Packit Service 8bf002
Packit Service 8bf002
main( void)
Packit Service 8bf002
{
Packit Service 8bf002
    int     abcd = 4;
Packit Service 8bf002
Packit Service 8bf002
    fputs( "started\n", stderr);
Packit Service 8bf002
Packit Service 8bf002
/* 3.1: A comment is converted to one space.    */
Packit Service 8bf002
    assert( strcmp( str( abc/* comment */de), "abc de") == 0);
Packit Service 8bf002
Packit Service 8bf002
/* 3.2: // is not a comment of C.   */
Packit Service 8bf002
/*  assert( strcmp( str( //), "//") == 0);  */
Packit Service 8bf002
Packit Service 8bf002
/* 3.3: Comment is parsed prior to the parsing of preprocessing directive.  */
Packit Service 8bf002
#if     0
Packit Service 8bf002
    "nonsence"; /*
Packit Service 8bf002
#else
Packit Service 8bf002
    still in
Packit Service 8bf002
    comment     */
Packit Service 8bf002
#else
Packit Service 8bf002
#define MACRO_abcd  /*
Packit Service 8bf002
    in comment
Packit Service 8bf002
    */  abcd
Packit Service 8bf002
#endif
Packit Service 8bf002
    assert( MACRO_abcd == 4);
Packit Service 8bf002
Packit Service 8bf002
    fputs( "success\n", stderr);
Packit Service 8bf002
    return  0;
Packit Service 8bf002
}
Packit Service 8bf002