Path: utzoo!attcan!uunet!husc6!mailrus!ames!vsi1!daver!athsys!jim From: jim@athsys.uucp (Jim Becker) Newsgroups: comp.lang.c++ Subject: Re: Including header files minimally. Message-ID: <186@tityus.UUCP> Date: 15 Nov 88 01:25:19 GMT References: <3561@pt.cs.cmu.edu> Organization: Athena Systems, Inc., Sunnyvale, CA Lines: 47 From article <3561@pt.cs.cmu.edu>, by dld@f.gp.cs.cmu.edu (David Detlefs): > [stuff deleted] > > It would be nice if you could precompile each header file to get a > symbol table (both preprocessor and language tables -- this scheme > would require an integrated preprocessor/compiler) that you would dump > to a file. [clipped] > Something fairly equivalent to this existed in the Amiga world, and it's net effect was excellent. I found that using this type of approach made development on a 68000/floppy based Amiga faster than a 80286/harddisk system! This was part of the Manx development system (aka - Aztec C). The implementation consisted of having a special option for the compiler that would take the symbol table that it currently had and outputing the content as a "library" file. Not a standard type library, but a library of symbols that were known. This creation I did using a C file that contained #include statements for all the standard include files that I used in the system. They were then bundled into this small binary format library. During subsequent compilation, the created symbol library file was included in the command line. Any include files that were needed from during the compilation process were semantically extracted from the symbol library when they were needed. Include files that were not in the symbol library were processed normally. The result was a DRAMATIC improvement in the compilation speed! I have been surprised that this concept hasn't yet come into other products that I have crossed paths with, as it seems very elegant and nice (w/ not much effort). We just received the Oregon C++ compiler, I hope they may integrate something such as this into their compiler to help further improve the speed of compilation!! > > -- > Dave Detlefs > Carnegie-Mellon CS -Jim Becker