]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
a68: do not define Number and whole as built-ins
authorJose E. Marchesi <jemarch@gnu.org>
Sat, 17 Jan 2026 17:28:34 +0000 (18:28 +0100)
committerJose E. Marchesi <jemarch@gnu.org>
Sat, 17 Jan 2026 18:05:16 +0000 (19:05 +0100)
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 <jemarch@gnu.org>
gcc/algol68/ChangeLog

* a68-parser-prelude.cc (stand_transput): Do not define
`Number' and `whole' as built-ins.

gcc/algol68/a68-parser-prelude.cc

index 87d08773450519d3990bdb214cde4d2d6aa93df8..b28df455aa2aeb2332a0dd533f39562a6aab51db 100644 (file)
@@ -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.  */