* Fix building the documentation from the release archive. For 2.15, the user has to do make warnings manually in the main directory in order to be able to build the documentation, which means Perl needs to be installed on the system.
* Add instructions for Intel Control Flow Enforcement Technology (CET).
* The comparison and booleanizing operators can now be used in any expression context, not just %if. See section 3.5.
* New operator ? ... :. See section 3.5.1.
* Signed shift operators <<< and >>>. See section 3.5.9.
* The MASM DUP syntax for data definitions is now supported, in a somewhat enhanced form. See section 3.2.1.
* Warn for strange legacy behavior regarding empty arguments in multi-line macro expansion, but try to match legacy behavior in most cases. Legacy behavior can be disabled with the directive %pragma preproc sane_empty_expansion, see section 4.3 and section 4.10.1.
* A much more sensible limit to expression evaluation depth. The previously defined limit would rarely trigger before NASM died with a stack overrun error on most systems. See section 2.1.31.
* The state of warnings can now be saved and restored via the [WARNING PUSH] and [WARNING POP] directives. See section 7.13.
* The sectalign on|off switch does not affect an explicit directive. See section 5.10.2.
* Added configure option to enable building with profiling (--enable-profiling).
* Attempt to support of long path names, up to 32767 of UTF-16 characters, on Windows.
* Fixed 'mismatch in operand sizes' error in the MOVDDUP, CMPXCHG8B and CMPXCHG16B instructions.
* Improved error messages in the string transformation routine.
* Removed obsolete gnu-elf-extensions warning about 8- and 16-bit relocation generation. See section 8.9.8
* Added group aliases for all prefixed warnings. See section 2.1.26.
* Allowed building with MSVC versions older than 1700.
* Added implicitly sized versions of the K... instructions, which allows the K... instructions to be specified without a size suffix as long as the operands are sized.
* Added -L option for additional listing information. See section 2.1.4.
* Added some warnings for obsolete instructions for a specified CPU.
* Deprecated -hf and -y options. Use -h instead.
* Made DWARF as the default debug format for ELF.
* Added %pragma list options... to set or clear listing options (see opt-L).
* Allowed immediate syntax for LEA instruction (ignore operand size completely).
* Added limited functionality MASM compatibility package. See section 6.5.
* Add single-line macros aliases using %defalias or %idefalias. These behave like a kind of "symbolic links" for single-line macros. See section 4.1.10 and clear.
* Added support for stringify, nostrip, evaluating, and greedy single-line macro arguments. See section 4.1.1.
* Unused single-line macro arguments no longer need to have a specified name. See section 4.1.1.
* Added conditional comma operator %,. See section 4.1.11.
* Changed private namespace from __foo__ to __?foo?__, so a user namespace starting from underscore is now clean from symbols. For backwards compatibility, the previous names are defined as aliases; see section 4.1.10, section 4.11.3 and chapter 5.
* Added support of ELF weak symbols and external references. See section 8.9.5.
* Changed the behavior of the EXTERN keyword and introduced REQUIRED keyword. See section 7.6.
* Added %ifusable and %ifusing directives. See chapter 6.
* Made various performance improvements and stability fixes in macro preprocessor engine.
* Improved NASM error handling and cleaned up error messages.
* Many, many bug fixes.
* Suppress nuisance "label changed during code generation" messages after a real error.
* Add support for the merge and strings attributes on ELF sections. See section 8.9.2.
* Add support for the note, preinit_array, init_array, and fini_array sections type in ELF. See section 8.9.2.
* Handle more than 32,633 sections in ELF.
I've included *.tgz archive also if text formatting is broken by mail agent.
‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Monday, June 29, 2020 9:30 AM, Stuart Henderson <[hidden email]> wrote:
> On 2020/06/29 08:46, Martin wrote:
> > Network Assembler port update.
> Dependent ports need testing.
> $ grep devel/nasm /usr/local/share/ports-INDEX | cut -d'|' -f2
> > I've included *.tgz archive also if text formatting is broken by mail agent.
> It is broken, but a tgz is a pain to deal with for a port update.
> If you can't use a working mail system (most other contributors seem to
> manage) then at least try sending the diff as an attachment.
> > --- Makefile.old Wed Jul 17 17:49:21 2019
> > +++ Makefile Mon Jun 29 09:46:50 2020
> > @@ -4,8 +4,8 @@
> > COMMENT= general-purpose multi-platform x86 assembler
> > -VERSION= 2.14.02
> > -REVISION= 1
> > +VERSION= 2.15.01
> > +REVISION= 0
> REVISION is removed at updates.
Sorry, but I can access mail by web client from different machine only. I can't split diffs and mail it from OpenBSD in any way, so I can transfer them to another machine and put into attachment or in web interface only.
I'm really sorry about it.
Hope you can use the attached diffs from previous mail as-is in original formatting. They should work fine (tested on openbsd 6.7 with all the latest patches installed).
I'm using nasm for small project, and I hit the DATA & TEXT segment issues with v2.14.02 but 2.15.01 completely solves it.
If anybody can test the software in other way, please do it and report. For my relatively small project 2.15.01 works without any issues.
‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Monday, June 29, 2020 11:37 AM, Stuart Henderson <[hidden email]> wrote: