TIP: Click on subject to list as thread! ANSI
echo: aust_c_here
to: andrew clarke
from: david nugent
date: 1996-03-30 04:14:44
subject: wanted MS C v6

ac>> FWIW, Microsoft QuickC 2.5 for DOS is a cut-down version of
 ac>> Microsoft C 6.0.

 > Almost everything except the optimiser.

 ac> QC has an optimiser, albeit not a particularly configurable one.

Perhaps you forgot the quotes around the word "optimiser". It
does an abysmal job, and you'll often get better code from leaving it off.
The one in QC is *not* the same one as in MSC (nor the code generator for
that matter), and certainly not in the same class.


 > files, output assembler from C and do inline assembler (there were
 > probably more - I never used QC, so it was never an issue).

 ac> Right - except QC can do inline assembler with the best of them. :-)

Must have changed at some point. But - I've never seriously used QC and I'm
relying on memory cells which have remaind unused for some years, so
perhaps I'm mistaken.

 ac> Unfortunately there doesn't seem to be a way (eg. a
 ac> pragma) to tell the QC compiler that the function
 ac> should return whatever value happens to be in AX; the
 ac> compiler will always report a "No return value"
 ac> warning.  The online help doesn't hint at anything to
 ac> disable this warning on a function-by-fun ction basis.
 ac> I could always disable all warnings, but that's
 ac> somewhat less than useful.

Or simply create a variable on the stack. and move your return value there
and return it.

 ac> Incidentally, you can't do inline assembler in WATCOM
 ac> C, right?  Or is that what #pragma aux is for?  

Yes, that's exactly what it is for. Not that I ever used much inline
assembler either until recently. And the only reason there is because C++
name mangling makes it difficult to use separate assembler modules without
resorting to separate functions outside of class members with C linkage.

--- MaltEd/2 1.0.b6
* Origin: Unique Computing Pty Limited (3:632/348)
SEEN-BY: 50/99 78/0 620/243 623/630 632/103 348 360 998 633/371 634/384 388
SEEN-BY: 635/301 502 503 544 639/252 711/401 409 410 413 430 808 809 932 934
SEEN-BY: 712/515 713/888 714/906 800/1 7877/2809
@PATH: 632/348 635/503 50/99 711/808 809 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.