Xenix cc bugs

Chris Moran cjm at iris.mincom.oz.au
Wed Nov 21 20:16:45 AEST 1990


We have discovered the following bugs in our SCO Xenix cc :

1)  This code elicits
        "fatal error C1026: parser stack overflow, please simplify your
        program"

    from cc :
        while (1) {
            while (1) {
                ...             /*  nested to a depth of 12  */
                ;
            }
        }

    If while() is substituted with for(), the permitted nesting depth drops
    to 7.

    Though hand-crafted C code rarely reaches these depths of iteration in a
    single function, an automatic code generator such as a language translator
    can burst this limit rather easily.

    SCO knows about this problem, but replies that this "feature" does not
    warrant the allocation of development resources.

2)  Compiling this program with "cc -M3e -g" generates an executable whose size
    is _260K_.

        static int funct (void);

        main (argc, argv)
            int argc;
            char *argv[];
        {
            funct ();
        }

        static int
        funct (void)
        {
            ;
        }

    Removing the void specifier and hence reverting to old-style function
    declarations, or removing static, or compiling without symbolic info
    (the -g flag), creates a binary more suiting the code (8 K).

    SCO have yet to hear about this one.


We are running with SCO Xenix 386 SysV, Rel. 2.3.2, Development system 2.3.1,
with SLS lng244 installed.

Anyone with similar stories?


Chris Moran
cjm at mincom.oz.au



More information about the Comp.unix.xenix.sco mailing list