Path: utzoo!attcan!uunet!lll-winken!lll-tis!helios.ee.lbl.gov!pasteur!ucbvax!ucdavis!deneb.ucdavis.edu!cck From: cck@deneb.ucdavis.edu (Earl H. Kinmonth) Newsgroups: comp.sys.ibm.pc Subject: Re: What about the Turbo C compiler? Keywords: BSD compatible, IO library Message-ID: <2637@ucdavis.ucdavis.edu> Date: 5 Aug 88 23:28:08 GMT References: <371@gt-eedsp.UUCP> Sender: uucp@ucdavis.ucdavis.edu Reply-To: cck@deneb.ucdavis.edu.UUCP (Earl H. Kinmonth) Organization: University of California, Davis Lines: 39 In article <371@gt-eedsp.UUCP> drabik@gt-eedsp.UUCP (Timothy J. Drabik) writes: > >I'm looking for a C compiler for a PC XT that will allow me to write >software that runs both on the PC (MSDOS) and on 4.2 BSD on a 780, >reasonably priced. Would some Turbo C users please comment on the >merits or flaws in this compiler? I do what you describe plus compile for several Xenix systems, ULTRIX, and 2.9 BSD. I have three C compilers: the Xenix (Microsoft) cross compiler, MSC, and TurboC. I gave up on MSC (Quick C) under MSDOS. The interface is bad, you can only use the middle memory model (for the debug environment), and the system of handling libraries is intolerable. TurboC (1.0) has many bugs, some in fundamental areas. You say you want floating point arithmetic that works? What are you, some kind of communist? I've never succeeded in getting anything but the most trivial programs to work using large and huge memory models, and turning on stack probes causes programs to run out of memory very rapidly. The documentation has many errors in terms of allegedly equivalent UNIX/MSDOS calls and some things are especially stupid, the signal (actually ssignal under TURBOC) handling, for example. Watch out for **IX code that calls ioctl; turboc has one unrelated to the **IX version. With enough #ifdef statements, you can get things to work, however, and unless you like rodents, the interface is more congenial. Combine TurboC with the MKS Toolkit, put the basic programs and includes on ram disk, and you'll probably not mis a debugger since you can compile/relink so fast. On the other hand, the Quick C (MSC) includes and functions are overall more **IX compatible, and if you are going to use it in a command line environment, you can avoid the dumb interface and its diddling with the video (not good for my ATT 6310).