Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!necntc!adelie!munsell!jwf From: jwf@munsell.UUCP (Jim Franklin) Newsgroups: comp.lang.c Subject: Re: MAJOR ANSI C FLAW (my opinion, of course) Message-ID: <1298@wyszecki.munsell.UUCP> Date: Wed, 14-Oct-87 15:07:53 EDT Article-I.D.: wyszecki.1298 Posted: Wed Oct 14 15:07:53 1987 Date-Received: Fri, 16-Oct-87 07:00:24 EDT Organization: Eikonix Corp., Bedford, MA Lines: 34 The proposed ANSI C limit of 6 characters on external symbols is completely bogus. It will make a great deal of existing code non-complying, and the thought of the federal government mandating compliance with such brain damage is frightening. The "justification" given for the limit is that ANSI C needs to be supported by many vendors in order for it to succeed as a standard, and there exists a variety of obsolete compilers and linkers that will only support 6 character externals. Suppose the ANSI C standard permitted a more "reasonable" limit, say 16 or 32 characters. Companies with compilers/linkers that couldn't handle this limit would have to fix them. So what? If I had to guess, most of this obsolete software is owned by very large companies like IBM, DEC, HP, PRIME, etc. These companies have large resources ($$$ and people), and they also sell a lot of systems/software. They therefore have a large incentive to fix their obsolete software, and the resources to do it. What is better? Having a few companies with large resources and a large potential payback fix a few compilers/linkers, or have the entire rest of the C community rewrite many millions of lines of C? Give me a break! How hard is it to make an existing compiler/linker accept longer names? If it isn't just changing the line #define MAX_EXTERN_LEN 6 to #define MAX_EXTERN_LEN 32 then the company that wrote that software deserves to be screwed, not the rest of the C community. ----- {harvard!adelie,{decvax,allegra,talcott}!encore}!munsell!jwf Jim Franklin, Eikonix Corp., 23 Crosby Drive, Bedford, MA 01730 Phone: (617) 663-2115 x415