Skip to content

v2.19pre2

Pre-release
Pre-release
Compare
Choose a tag to compare
@Baron-von-Riedesel Baron-von-Riedesel released this 07 Dec 14:33
· 4 commits to master since this release

Bugfixes:

  • format mz: stack segment was never written - a fault if it isn't
    located at the end of the binary; see stack1.asm.
  • format mz,pe: start offset for first segment may have resulted in
    an invalid binary; see org1.asm & org2.asm.
  • fastcall 32-bit (MS style): registers may have hold float arguments.
  • no 'implicit far jmp/call to near label' error in pass one; see
    group7.asm.
  • option -D: accept white spaces if option is enclosed in double quotes
    ( Masm compatible ).
  • subtraction of 2 labels may have caused error "constant value too large";
    see minus1.asm.
  • if .model wasn't flat, but segments with flat attribute existed, they
    may not have been listed in symbol table.
  • regression in v2.05-v2.18, DUP operator: if an undefined symbol was
    contained in first operand, error message may have been omitted; see
    struct43.asm.
  • local labels were accepted by PUBLIC directive without -Zm being set;
    see public3.asm.
  • omf format: incorrect special handling of assembly-time variable fixups
    removed; see label9.asm.

Other changes:

  • write listing reworked.
  • option -pe: add segments with combine type stack - they may contain
    initialized data.
  • JWasmr.exe: option -Sz removed.
  • PUSHW will emit warning "magnitude of offset exceeds 16-bit" if
    operand is a 32-bit offset.
  • using 'option oldmacros' will cause a warning only.
  • option -pe: info section ".drectve" will be scanned and some linker
    options are recognized and handled.
  • PUBLIC directive extended to allow setting the export attribute.
  • PAGE directive: syntax check added.
  • .model flat: ensure variables in 16-bit segments can be accessed
    directly if segment register is assumed flat ( Masm compatible );
    see flat2.asm.