[comp.os.msdos.programmer] Top Speed C

pgriff@spocom.UUCP (Paul Griffith) (05/03/91)

How does TopSpeed C / C++ compare to Microsoft C, and Borland C++ ?

s64421@zeus.usq.EDU.AU (house ron) (05/07/91)

pgriff@spocom.UUCP (Paul Griffith) writes:

>How does TopSpeed C / C++ compare to Microsoft C, and Borland C++ ?

I have an old (start 1990) version of TopSpeed C.  It compiles faster,
and writes faster and shorter progs, than MSC 5, but published figures
for MSC 6 seem better, but I have no way to check this.  The version
I have has some bugs, but the library was inexpensive and I fixed most
of them.  The remaining bugs concern optimising programs which pass
function pointers as arguments.  I found that turning off selected
optimisations on certain functions fixed this.  It contains a duplicate
of the MSC graphics library, a duplicate of the Turbo window library
and a much better one of their own design.  It allows multithreaded
programs under DOS.  It is unbelievably good at finding mismatches
between modules. It checks at link time for functions with mismatched
arguments.

My main gripe concerns Essential Graphics.  TSC found hundreds upon
hundreds of really foul errors in that system which (apparently) MSC
doesn't report.  They include missing argument, superfluous args,
passing two args which accidentally combine to give a bigger single arg,
and the list goes on.  Well, In trying to repair this mess, I couldn't!
I fixed everything in sight, but the package still didn't work.  Also the
compiler went into an infinite loop optimising the EG demo prog.  It's
a really foul program, but it shouldn't infinite-loop.

One thing I LOVE about TSC is their smart linker.  You can divide your
work logically into files depending on what belongs together, but if
the program doesn't use it all, the functions and data not used are
not linked into the exe.  It is so obviously the right way to go, but
the various reviewers don't seem to see any benefit in this.

--
Regards,

Ron House.   (s64421@zeus.usq.edu.au)
(By post: Info Tech, U.C.S.Q. Toowoomba. Australia. 4350)