Annotation of researchv10no/cmd/lcc/ph/d41d.c, revision 1.1

1.1     ! root        1: /* The Plum Hall Validation Suite for C
        !             2:  * Unpublished copyright (c) 1986-1991, Chiron Systems Inc and Plum Hall Inc.
        !             3:  * VERSION: 4
        !             4:  * DATE: 1993-01-01
        !             5:  * The "ANSI" mode of this suite corresponds to official ANSI C, X3.159-1989.
        !             6:  * As per your license agreement, your distribution is not to be moved or copied outside the Designated Site
        !             7:  * without specific permission from Plum Hall Inc.
        !             8:  */
        !             9: 
        !            10: #define LIB_TEST 1
        !            11: #include "defs.h"
        !            12: #if !ANSI || !HAS_PROTOTYPES
        !            13: #define SKIP41 1
        !            14: #endif
        !            15: 
        !            16: #include "flags.h"
        !            17: #ifndef SKIP41
        !            18: #include <stddef.h>
        !            19: 
        !            20: /*
        !            21:  * 4.1.5 - Common definitions <stddef.h>
        !            22:  */
        !            23: void d4_1_5()
        !            24:        {
        !            25:        char *p, *q;
        !            26:        struct s1
        !            27:                {
        !            28:                char c;
        !            29:                int d;
        !            30:                };
        !            31: #if WIDE_CHARS
        !            32:        char c1 = 'a';
        !            33:        wchar_t w1;
        !            34: #endif
        !            35: 
        !            36:        Filename = "d41d.c";
        !            37: 
        !            38:        iequals(__LINE__, sizeof(ptrdiff_t), sizeof(p - q)); 
        !            39:        iequals(__LINE__, offsetof(struct s1, c), 0);
        !            40:        checkthat(__LINE__, offsetof(struct s1, c) < offsetof(struct s1, d));
        !            41: #if WIDE_CHARS
        !            42:        iequals(__LINE__, sizeof(size_t), sizeof(sizeof(int)));
        !            43:        checkthat(__LINE__, sizeof(wchar_t) >= sizeof(char));
        !            44: 
        !            45:        /* representation as char must == representation as wchar_t */
        !            46:        w1 = (wchar_t)c1;
        !            47:        iequals(__LINE__, w1, c1);
        !            48:        c1 = (char)w1;
        !            49:        iequals(__LINE__, w1, c1);
        !            50:        p = NULL;
        !            51: #endif
        !            52:        }
        !            53: 
        !            54: #else
        !            55: int skp41d = 1;        /* must have one def */
        !            56: #endif /* SKIP41 */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.