Skip to content

ORCA/C 2.3.0 B1

Latest

Choose a tag to compare

@sheumann sheumann released this 13 Jul 00:57

This ORCA/C 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

The release notes describe the new features and bug fixes in detail. For full documentation on ORCA/C, please refer to the release notes along with the ORCA/C 2.2 manual and the readme.

This is an update package designed to be installed on top of an existing copy of ORCA/C 2.1 or later. Instructions on applying the update are available here. Note that the disk image must be treated as a hard drive image or high-density floppy image. If you need to use an 800KB floppy, place the SHK file on it instead of using the disk image.

If you need a full copy of ORCA/C, you can get it as part of the Opus ][ collection sold by Juiced.GS.