Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!cmcl2!rutgers!topaz.rutgers.edu!ron From: ron@topaz.rutgers.edu (Ron Natalie) Newsgroups: comp.lang.c Subject: Re: MAJOR ANSI C FLAW (my opinion, of course) Message-ID: <15664@topaz.rutgers.edu> Date: Sat, 17-Oct-87 12:51:21 EDT Article-I.D.: topaz.15664 Posted: Sat Oct 17 12:51:21 1987 Date-Received: Sun, 18-Oct-87 11:09:13 EDT References: <1132@gilsys.UUCP> <1246@bsu-cs.UUCP> <6543@brl-smoke.ARPA> <104@aimt.UUCP> <8992@mimsy.UUCP> <11599@labrea.STANFORD.EDU> Organization: Rutgers Univ., New Brunswick, N.J. Lines: 15 I should follow up the claim that early (PDP-11) unices only had 6 character C externals. It was seven. You didn't need to have a null in the symbol table since the entries were fixed at eight characters. The _ prefix ate the eigth character. One annoying and totally confusing bug to people who hadn't seen it before was when your C compile did m 232 The C compiler had eight character significance in it's symbol table so it realized that symbols like "abcdefgh" and "abcdefgi" were different and made assembler code using them. When prepended with underscore, the differentiating last character was pushed off the end and the assembler bitched about multiple symbol definition. -Ron