Releases: lkujaw/felix
Releases · lkujaw/felix
v0.2.0: Felix 0.2.0: Separate Standard_Text from C_Standard_IO
Other new features include: - The C_Standard_IO and Native_Language_System packages have been rewritten to comply with the 1987 version of the ISO Ada standard. * alire.toml: Add a dependency on catgets for Windows, as the necessary nl_types.h C header is not supplied by default. * examples/example1.adb: - Add MIT-0 license. - Add usage instructions. - Adapt to API changes - Minor formatting changes. * felix.gpr: - Increment library version: 0.1.0 -> 0.2.0. - Rename System to System_API. - Silence warnings (J) about the use of Ada 1987 pragmas like Interface. - Drop front-end inlining, which was inadvertently copied from BLAKE2S. * src/cstandio.ads * src/cstandio.adb: - Rewrite for Ada 1987 compatibility. - Remove the printf() emulation functions to Standard_Text. - Wrap the C fprintf* and sprintf* functions within Ada functions for the use of Standard_Text. - Change the Null_Output function to the procedure Open_Null, as null files must be closed like any other. - Make Standard_Output the default File for output routines. - Add new *_Image functions that use sprintf. * src/nalansys.ads * src/nalansys.adb: - Rewrite for Ada 1987 compatibility. Unfortunately, this prohibits marking the imported C constants as constants or the fully defined types as limited. - The Message function is now a more direct catgets() interface, and has no knowledge of Standard_Text's printf() emulation. * src/posix/csionuou.adb * src/win32/csionuou.adb: Rename for Null_Output to Open_Null change. * src/stantext.ads * src/stantext.adb: - New location for Felix's printf() emulation. This change facilitates the future creation of an Enhanced_Text package utilizing Ada-native printing routines and keeps the Ada 1995 features separate from the interface packages. - All imported/interfaced procedures and functions have been removed to C_Standard_IO or Native_Language_System, as appropriate.