Written some cool source code? Upload it to Programmer's Heaven.

View \BUGS.TXT

Mangler v1.32

Submitted By: Unknown
Rating: (Not rated) (Rate It)


Known bugs
~~~~~~~~~~
* Mangler is not rock solid. Your file should at least pass the Borland
  compiler, before you have a chance that mangler doesn't choke on it.

  There are files which I know which broke mangler although I have not
  got that files in hand so I could not fix mangler. You have a 0.8
  probability that mangler mangles your file. Please report errors or
  send me files that mangler does not handle.


* When using externals like
    {$L InitCrt.obj}
    {$F+}
    Procedure ReInitCrt;external;
  and InitCrt.obj references variables in a unit, you can mangle but
  not compile this unit because Mangler does not know that the .obj
  references variables or procedures in the unit and that it therefore
  should leave them untouched.
  The chance that mangler ever will be modified for this circumstances
  is nil.
  Fix: if possible turn the .obj to assembler and instead of making
  an external routine, make a basm routine.


* The most stable source code manglers have to parse compiler
  directives. This one does not, so some source code will be mangled
  incorrectly or not at all. Note that almost all source using compiler
  directives will compile. The following for example will not:

    procedure dv_TObject.Int15_p0_r0(axValue : word);
    {$IFNDEF DPMI} assembler; {$ENDIF}
    {$IFDEF DPMI}
    begin
      {* do some stuff *}
    end;
    {$ELSE}
    asm
      {* do some asm stuff *}
    end;
    {$ENDIF}

  Rewriting this to:

    {$IFDEF DPMI}
    procedure dv_TObject.Int15_p0_r0(axValue : word);
    begin
      {* do some stuff *}
    end;
    {$ELSE}
    procedure dv_TObject.Int15_p0_r0(axValue : word);  assembler;
    asm
      {* do some asm stuff *}
    end;
    {$ENDIF}

  will make it compile correctly.

  The

corner
© 1996-2008. All rights reserved. Reproduction in whole or in part, in any form or medium without express written permission is prohibited.
Violators of this policy may be subject to legal action. Please read our Terms Of Use and Privacy Statement for more information.
Publisher: Lars Hagelin.
bootstrapLabs Logo A bootstrapLabs project.