Heute erschien der Release Candidate 1 für SDCC 4.3.0. Quellcode, Dokumantation, und Binärdateien für GN/Linux auf amd64 und Windows auf amd64 und x86 finden sich am üblichen Ort, in den entsprechenden Verzeichnissen:
https://sourceforge.net/projects/sdcc/files/
Die bedeutendsten Neuerungen seit 4.2.0 sind:
- C2X bit-precise integer types and bit-fields thereof for (except for pic14, pic16).
- Added all new general mnemonics from ASxxxx 5.40 except for .bank and enabled for all ports
- sm83: sdasgb now can output cycles in listing and sz80 has accurate cycles for this processor except for branching
- struct / union return (except for ds390, hc08, s08, mos6502, pic14, pic16).
- div standard library function family.
- struct / union parameters (except for hc08, s08, mos6502, pic14, pic16).
- C2X nullptr.
- Many fixes for the type system and _Generic.
- Adopted more of GCC, QuickC and tinycc tests.
- C2X char8_t.
- C2X memalignment.
- C2X unreachable.
- C2X typeof, typeof_unqual.
- C2X auto.
- C2X keywords bool, true, false, alignas, alignof, static_assert.
- C90-C17 function declarators without prototypes.
- C99 variably modified types.
- C2X bit and byte utilities.
- call_once.
- _sdcc_external_startup renamed to __sdcc_external_startup and supported for all ports.
- makeshift support for long double as another alias for float.
Das umfassende ChangeLog findet sich unter: https://sourceforge.net/p/sdcc/code/HEAD/tree/tags/sdcc-4.3.0-rc1/sdcc/ChangeLog