Hi folks,
I've just released ORCA/C 2.3.0 B1. The full source code is available on GitHub, and a binary update package is on the releases page:
https://github.com/byteworksinc/ORCA-C/releases/tag/orcac-230b1
This is the latest version of ORCA/C, the C compiler for the Apple IIGS.
This update contains various enhancements and bug fixes, including
support for many features from the recent C23 standard. Major new
features added since ORCA/C 2.2.1 include:
* C23 language features
- New spellings without underscores for some keywords like bool
- true, false, and nullptr predefined constants
- typeof and typeof_unqual operators
- #elifdef and #elifndef preprocessor directives
- #embed preprocessor directive for embedding data from files
- Type inference using auto in variable declarations
- Bit-precise integer types _BitInt(N) and unsigned _BitInt(N)
- Variable-length array types (but not VLAs as local variables)
- Optional support for C23 rules requiring function prototypes
- Enumeration constant values can be outside the range of int
- Underlying types for enumerations can be explicitly specified
- Structure, union, or enumeration definitions can be repeated
- Labels are allowed before declarations or at the end of a block
* C23 library features
- Many new floating-point math functions
- New <stdbit.h> header with many bit utility functions
- Support for binary numbers in printf and scanf
- Various new library functions such as memccpy and strdup
Note that this update must be applied on top of an existing copy of
ORCA/C 2.1 or later. If you don't already have that, it's available as
part of the Opus ][ collection sold by Juiced.GS.
There is also a corresponding update to the GNO-specific version of
ORCALib, which you should get if you are using ORCA/C under GNO:
https://github.com/byteworksinc/ORCALib/releases/tag/gno-orcalib-230b1
--
Stephen Heumann
--- PyGate Linux v1.5.18
* Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)