Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxn!ihnp4!cuae2!ltuxa!we53!busch!wucs!jane From: jane@wucs.UUCP (Jane Mack) Newsgroups: net.micro.mac Subject: Re: Reviews wanted please Message-ID: <1430@wucs.UUCP> Date: Tue, 11-Feb-86 13:22:09 EST Article-I.D.: wucs.1430 Posted: Tue Feb 11 13:22:09 1986 Date-Received: Fri, 14-Feb-86 01:38:55 EST References: <396@3comvax.UUCP> Distribution: net Organization: Washington U. in St. Louis, CS Dept. Lines: 30 Summary: comments on Aztec C compiler I've been using the Aztec system for about a year and I'm pretty happy with it, except of course that it compiles a whole lot slower than the c compiler on our vax. Our source code is over 700 kB spread over 77 modules (some of them quite small) and our executable code is 220 kB. We've only had a few minor problems. (1) The most troublesome problem is the code generated when you have a handle to a record, and you assign the result of some function to one of the fields in that record. The compiler caches the address of the record structure in a register, calls the function, and then calculates the address of the particluar field of the record that is to receive the result. It calculates this result address using the address that it cached before the function call. Well, as you can guess, if the function allocates a lot of memory, then memory will be compacted to make room and the record structure will be moved. Hence, the cached address is garbage. We think this is a bug. To get around it, either use a temporary variable to receive the result of the function, or lock the handle before calling the function. (2) Make doesn't work when you have as many modules as we do. (3) To link with the c and math libraries when your executable code is big you have to include them both at the beginning and the end of the ln command. Overall I think the Aztec system is pretty good. good luck. jane mack