[comp.sys.ibm.pc] Borland's new C compiler

iverson@cory.Berkeley.EDU (Tim Iverson) (06/05/87)

In article <381@vax1.ccs.cornell.edu> wvpj@vax1.UUCP (Marc Parmet) writes:
>Anyone out there have reviews of Borland's new C compiler?  [...]

Does anyone know if CodeView will work with the .exe files produced
by this compiler?

- Tim Iverson
  iverson@cory.Berkeley.EDU
  ucbvax!cory!iverson

ephram@violet.berkeley.edu.UUCP (06/08/87)

In article <2835@zen.berkeley.edu> iverson@cory.Berkeley.EDU.UUCP (Tim Iverson) writes:
>Does anyone know if CodeView will work with the .exe files produced
>by this compiler?
>
>- Tim Iverson
>  iverson@cory.Berkeley.EDU
>  ucbvax!cory!iverson

The answer is a qualified yes.  CodeView will work with an Assembly language
program also.  The catch is that there is no info about source code and no
variable names included in the .exe file.  That means that what you will have
is the Assembly view of the codeview screen without symbols (memory ref's
only).  Still a viable tool though.

Ephram Cohen
ephram@violet.berkeley.edu

ephram@violet.berkeley.edu

jpn@teddy.UUCP (06/08/87)

>>Anyone out there have reviews of Borland's new C compiler?  [...]
>
>Does anyone know if CodeView will work with the .exe files produced
>by this compiler?

Well, it will WORK, but Turbo C does not put in the symbolic information
that Codeview needs to work in symbolic mode (which is probably what you
were really asking).  Turbo C appears to be able to put line number
information into the .obj file, so it will probably work with SYMDEB
(untried).

ssnyder@tybalt.caltech.edu (Scott S. Snyder) (06/09/87)

In article <4074@teddy.UUCP> jpn@teddy.UUCP (John P. Nelson) writes:
>>>Anyone out there have reviews of Borland's new C compiler?  [...]
>>
>>Does anyone know if CodeView will work with the .exe files produced
>>by this compiler?
>
>Well, it will WORK, but Turbo C does not put in the symbolic information
>that Codeview needs to work in symbolic mode (which is probably what you
>were really asking).  Turbo C appears to be able to put line number
>information into the .obj file, so it will probably work with SYMDEB
>(untried).

  Yes, SYMDEB will work. However, you CAN get CodeView to use line numbers
and global symbols from Turbo-C programs. You just have to use Microsoft's
linker. Since Turbo doesn't put default library names into the .obj file,
you'll also have to tell LINK about all the Turbo libraries and the startup
object file (c0), i.e., something like this:

    link/co \tc\lib\c0s pgm, pgm,,\tc\lib\emu \tc\lib\maths \tc\lib\cs

(handy tip: put emu (or fp87) BEFORE cs in the link command; otherwise floating
 point doesn't work. Also, c0 should be before your program name; otherwise
 spurious "Null pointer assignment" errors are generated)

Of course, CodeView won't know about anything about types or
automatic variables.

And now a question: TC doesn't seem to support modifying static data with near,
far, and huge like MSC does (TC seems only to allow them for pointers and
functions). Is this correct? Are there other ways to achieve the same thing?
(specifically, what I want to do is to have an array bigger than 64k without
having to use the huge model).


sss