home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!olivea!spool.mu.edu!agate!stanford.edu!rutgers!concert!sas!mozart.unx.sas.com!walker
- From: walker@twix.unx.sas.com (Doug Walker)
- Newsgroups: comp.sys.amiga.programmer
- Subject: Re: SAS 6.1 and IDIR problems
- Message-ID: <BzCuvn.Lx9@unx.sas.com>
- Date: 16 Dec 92 13:59:47 GMT
- References: <BynD5B.35w@srgenprp.sr.hp.com> <Bz3zDo.1Jx@unx.sas.com> <JRAJA.92Dec15231111@vipunen.hut.fi>
- Sender: news@unx.sas.com (Noter of Newsworthy Events)
- Distribution: inet
- Organization: SAS Institute Inc.
- Lines: 47
- Originator: walker@twix.unx.sas.com
- Nntp-Posting-Host: twix.unx.sas.com
-
-
- In article <JRAJA.92Dec15231111@vipunen.hut.fi>, jraja@vipunen.hut.fi (Jarno Tapio Rajahalme) writes:
- |> What about adding _new_ include files to gst automagically? This would
- |> ease up thing in the start phase of developing new code. You could
- |> start with an empty gst which would then grow up with no changes to sc
- |> options.
-
- |> | Address: Jarno Rajahalme | EMail: |
-
- This would indeed be a nice feature, but there are some extremely
- difficult technical problems in adding to an existing GST. Most of
- them have to do with incomplete structure tags (in fact, most of
- the technical problems we did have had to do with incomplete
- structure tags.) If header file A uses a structure tag but never
- defines it, then we have an incomplete definition in the GST; if
- later you add header file B that does define it, we have to
- backpatch all references, but ONLY if the .c file includes both
- header file A and header file B, and use the incomplete definition
- otherwise.
-
- Also, it is possible that the new file contains #defines or structure
- definitions that actually CONFLICT with the information already in
- the GST. In this case, I have to make sure that the .c file being
- included doesn't include both .h files, because this would never
- work without GSTs. This implies that I have to be able to tell which
- symbols will affect the other .h file, which, given C's preprocessor,
- is a near-impossible task.
-
- With the current setup, what's in the GST is basically determined by
- the state of the symbol table after one compile; this state is
- guaranteed to be consistent, or an error would have been generated
- during the GST's creation. It is much, much more difficult to "guess"
- at what errors WOULD have been produced when adding a new file and
- produce them without actually reading the old file!
-
- In the current GST implementation, there are the beginnings of a
- technique to handle this. We couldn't explore it fully in the time
- available for 6.0, but hopefully someday we will be able to.
-
- --
- *****
- =*|_o_o|\\=====Doug Walker, Software Distiller====== BBS: (919)460-7430 =
- *|. o.| || 1200/2400/9600 Dual
- | o |// For all you do, this bug's for you!
- ======
- usenet: walker@unx.sas.com bix: djwalker
- Any opinions expressed are mine, not those of SAS Institute, Inc.
-