https://gcc.gnu.org/g:09c9875a81edc88b6e09b2fdbb5a7cdc4ae059e3
commit r16-6858-g09c9875a81edc88b6e09b2fdbb5a7cdc4ae059e3 Author: Jose E. Marchesi <[email protected]> Date: Sat Jan 17 18:28:34 2026 +0100 a68: do not define Number and whole as built-ins Now that we have the support of adding Algol 68 code to the run-time library libga68, we are writing most of the Transput in Algol 68. In particular, both the Number mode and the standard procedure `whole', among others, are already implemented in transput.a68.in. This patch removed remnant code that used to define these as compiler built-ins. Signed-off-by: Jose E. Marchesi <[email protected]> gcc/algol68/ChangeLog * a68-parser-prelude.cc (stand_transput): Do not define `Number' and `whole' as built-ins. Diff: --- gcc/algol68/a68-parser-prelude.cc | 24 ++---------------------- 1 file changed, 2 insertions(+), 22 deletions(-) diff --git a/gcc/algol68/a68-parser-prelude.cc b/gcc/algol68/a68-parser-prelude.cc index 87d087734505..b28df455aa2a 100644 --- a/gcc/algol68/a68-parser-prelude.cc +++ b/gcc/algol68/a68-parser-prelude.cc @@ -1442,28 +1442,8 @@ posix_prelude (void) static void stand_transput (void) { - PACK_T *z = NO_PACK; - MOID_T *m = NO_MOID; - - /* Modes. */ - - /* NUMBER */ - z = NO_PACK; - (void) a68_add_mode_to_pack (&z, M_INT, NO_TEXT, NO_NODE); - (void) a68_add_mode_to_pack (&z, M_LONG_INT, NO_TEXT, NO_NODE); - (void) a68_add_mode_to_pack (&z, M_LONG_LONG_INT, NO_TEXT, NO_NODE); - (void) a68_add_mode_to_pack (&z, M_SHORT_INT, NO_TEXT, NO_NODE); - (void) a68_add_mode_to_pack (&z, M_SHORT_SHORT_INT, NO_TEXT, NO_NODE); - (void) a68_add_mode_to_pack (&z, M_REAL, NO_TEXT, NO_NODE); - (void) a68_add_mode_to_pack (&z, M_LONG_REAL, NO_TEXT, NO_NODE); - (void) a68_add_mode_to_pack (&z, M_LONG_LONG_REAL, NO_TEXT, NO_NODE); - M_NUMBER = a68_add_mode (&TOP_MOID (&A68_JOB), UNION_SYMBOL, a68_count_pack_members (z), NO_NODE, NO_MOID, z); - - /* Layout procedures. */ - - /* Conversion procedures. */ - m = a68_proc (M_STRING, M_NUMBER, M_INT, NO_MOID); - a68_idf (A68_STD, "whole", m); + /* Most of the standard transput is implemented in Algol 68 and doesn't + require compiler support. See libga68/transput.a68.in */ } /* Build the standard environ symbol table. */
