Blame test-c/m_33_gb.c

Packit b40e2e
/* m_33_gb.c:   Wide character constant encoded in GB-2312. */
Packit b40e2e
Packit b40e2e
#include    "defs.h"
Packit b40e2e
#include    <limits.h>
Packit b40e2e
#define     BYTES_VAL   (1 << CHAR_BIT)
Packit b40e2e
Packit b40e2e
main( void)
Packit b40e2e
{
Packit b40e2e
    char *  ptr;
Packit b40e2e
Packit b40e2e
    fputs( "started\n", stderr);
Packit b40e2e
Packit b40e2e
/* 33.1:    L'ch'.  */
Packit b40e2e
Packit b40e2e
#pragma __setlocale( "gb2312")              /* For MCPP     */
Packit b40e2e
#pragma setlocale( "chinese-simplified")    /* For Visual C */
Packit b40e2e
Packit b40e2e
#if     L'×Ö' == '\xd7' * BYTES_VAL + '\xd6'
Packit b40e2e
    ptr = "Wide character is encoded in GB 2312.";
Packit b40e2e
#elif   L'×Ö' == '\xd6' * BYTES_VAL + '\xd7'
Packit b40e2e
    ptr = "Wide character is encoded in GB 2312."
Packit b40e2e
    "Inverted order of evaluation.";
Packit b40e2e
#else
Packit b40e2e
    ptr = "I cannot understand GB-2312.";
Packit b40e2e
#endif
Packit b40e2e
Packit b40e2e
    assert( strcmp( ptr, "I cannot understand GB-2312.") != 0);
Packit b40e2e
    fputs( "success\n", stderr);
Packit b40e2e
    return  0;
Packit b40e2e
}
Packit b40e2e