You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This follows AVR, and it make int promotions work more like expected.
size_t is now unsigned int, was unsigned short
ptrdiff_t is now signed int, was signed short
intptr_t is now signed int, was signed short
char16_t is now unsigned int, was unsigned short
wint_t is now signed long, was unsigned long (now accomodates a -1 WEOF)
1475f49 -- Targets should now implement the default SIGABRT handler __sigabrt() instead of abort(). abort() now invokes raise() as required by the standard.
ea8aea8 - Break character conversion out of __putchar into __char_conv
__putchar now simply outputs to the target equivalent of file descriptor
zero; it no longer converts to the target character set. Accordingly, __putchar now replaces __chrout on most targets; __chrout has been removed. Character conversion functionality has been moved to a new __char_conv.
72e3379 -- Translate to shifted PETSCII at runtime; shift on startup if translation used.
This is likely to be a bit controversal; see the commit message for a detailed rationale. The jist is that the language of the standard essentially requires that outputting characters in our execution character set (ASCII) to the screen display their normal representation, as far as is possible. For the C64, that means shifting the character set. Accordingly, we do this in a constructor tied to the inclusion of __char_conv.