Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!lll-lcc!ptsfa!amdahl!rtech!daveb From: daveb@rtech.UUCP (Dave Brower) Newsgroups: comp.lang.c Subject: Re: Check the Arg Count (really lint libraries) Message-ID: <589@rtech.UUCP> Date: Fri, 9-Jan-87 12:35:23 EST Article-I.D.: rtech.589 Posted: Fri Jan 9 12:35:23 1987 Date-Received: Sat, 10-Jan-87 20:36:51 EST References: <3214@bu-cs.BU.EDU> <4900@mimsy.UUCP> <1193@ucbcad.berkeley.edu> <802@wjvax.wjvax.UUCP> <1887@utah-gr.UUCP> Reply-To: daveb@rtech.UUCP (Dave Brower) Organization: Relational Technology, Alameda CA Lines: 38 Summary: The problem is they don't search like ar(1) libraries. In article <1887@utah-gr.UUCP> donn@utah-gr.UUCP (Donn Seeley) writes: >Brett Galloway complains: > ... [Lint] provides the ability to create lint libraries. > Unfortunately, lint treats these libraries differently than cc > treats object libraries. It would be most useful for > maintaining large pieces of software if lint behaved the same > as cc -- lint'ing source files into some intermediate form, > finding all lint errors unique to that source file (this is > analogous to the compile cycle), and lint'ing the intermediate > lint files together to find global errors (this is analogous to > the load cycle). This would make lint easier to use, > especially from within makefiles. ... > >Lint (under BSD Unix and probably most other varieties) works exactly >like cc, 'compiling' into an intermediate form and 'loading' the >result... This is true in the simple case, and Donn's posted shell script will help create libraries for those without the SV lint that has the -c option. Unfortunately, the big problem is that lint libraries so conceived do not have anywhere near the same semantics as the "equivalent" object libraries. Lint pass 2 can't selectivly load a module as is done by the linker. This can really complicate matters on large systems where many executables are built from the same libraries without really using all of the contents of the whole library. Conjecture: Would life be easier in this case if every .c file compiled into a library had the magic /*LINTLIBRARY*/ comment? -dB -- Kill Tree. Kill Turkey. Merry Xmas. {amdahl, sun, mtxinu, cbosgd}!rtech!daveb