Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site dataioDataio.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!vax135!cornell!uw-beaver!uw-june!entropy!dataio!bjorn From: bjorn@dataioDataio.UUCP (Bjorn Benson) Newsgroups: net.lang.c,net.micro.pc Subject: Datalight C Message-ID: <870@dataioDataio.UUCP> Date: Tue, 3-Dec-85 20:14:48 EST Article-I.D.: dataioDa.870 Posted: Tue Dec 3 20:14:48 1985 Date-Received: Fri, 6-Dec-85 06:23:39 EST Organization: Data I/O Corp., Redmond WA Lines: 61 Xref: watmath net.lang.c:7294 net.micro.pc:6086 Rejoice ye not quite perfect programmers! (like me) I found this nice C compiler for the 8086 (IBM-PC and kin) that has some of the best error messages I have seen. For example, when I use the complicated pointer expressions that C allows, I commonly get mixed up on the *s, ()s, []s, etc. Datalight C gives good CLEAR error messages, as opposed to, say, Lattice C. For example: - - - - - - - - - - - - - - The Program - - - - - - - - - - - - - - - - - - - /* * Show off some neat features of Datalight C */ extern char *func(); main() { char (*(*a_func_ptr)())[10]; int a_var; a_var = a_func_ptr; } int func() { /* A do nothing function */ } - - - - - - - - - - - - - - - Datalight C - - - - - - - - - - - - - - - - - DLC1 1.10 Copyright (C) 1985 by Datalight, written by Walter Bright function main a_var = a_func_ptr; ^ "test.c", line 12 Warning: pointer mismatch and { ^ "test.c", line 16 Syntax error: 'func' previously declared as something else It was declared as: function func - - - - - - - - - - - - - - - Lattice C - - - - - - - - - - - - - - - - - - - Lattice C Compiler (Phase 1) V2.14 Copyright (C) 1982 Lattice Inc. test.C 12 Warning 30: pointers do not point to same object test.C 16 Error 72: external item attribute mismatch test.C 18 Error 2: unexpected end of file - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This compiler is about the best I've found for the PC, and it certainly helps track down syntax/semantic errors quickly. Now if only I could find a symbolic debugger for the PC... Anyway, Datalight C does good error recovery, it's inexpensive ($60), it compiles fast, and the resulting .EXE file runs fast. I use it. Bjorn Benson ..!uw-beaver!entropy!dataio!bjorn P.S. Datalight, 11557 8th Ave NE, Seattle WA, 98125, (206) 367-1803 P.P.S. Usual disclaimer... no financial interest... etc...