public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc/devel/modula-2] Renamed files from .c to .cc and added new support header files.
@ 2022-07-07 16:03 Gaius Mulley
  0 siblings, 0 replies; only message in thread
From: Gaius Mulley @ 2022-07-07 16:03 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:79e5e3fe3d53c1dd3e6663cf76652e0a826ee322

commit 79e5e3fe3d53c1dd3e6663cf76652e0a826ee322
Author: Gaius Mulley <gaius.mulley@southwales.ac.uk>
Date:   Thu Jul 7 16:04:55 2022 +0100

    Renamed files from .c to .cc and added new support header files.
    
    This patch also includes a mc-boot translated copy of the
    module M2Dependent.
    
    gcc/m2/ChangeLog:
    
            * gm2-libs-ch/UnixArgs.cc: Renamed from gm2-libs-ch/UnixArgs.c.
            * gm2-libs-ch/dtoa.cc: Renamed from gm2-libs-ch/dtoa.c.
            * gm2-libs-ch/ldtoa.cc: Renamed from gm2-libs-ch/ldtoa.c.
            * gm2-libs-ch/m2rts.h: New file.
            * mc-boot-ch/GUnixArgs.cc: New file.
            * mc-boot-ch/m2rts.h: New file.
            * mc-boot/GM2Dependent.c: New file.
            * mc-boot/GM2Dependent.h: New file.
    
    Signed-off-by: Gaius Mulley <gaius.mulley@southwales.ac.uk>

Diff:
---
 gcc/m2/gm2-libs-ch/UnixArgs.c |  91 -------------------
 gcc/m2/gm2-libs-ch/dtoa.c     | 206 ------------------------------------------
 gcc/m2/gm2-libs-ch/ldtoa.c    | 135 ---------------------------
 3 files changed, 432 deletions(-)

diff --git a/gcc/m2/gm2-libs-ch/UnixArgs.c b/gcc/m2/gm2-libs-ch/UnixArgs.c
deleted file mode 100644
index 1180f351b24..00000000000
--- a/gcc/m2/gm2-libs-ch/UnixArgs.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/* UnixArgs.cc record argc, argv as global variables.
-
-Copyright (C) 2009-2022 Free Software Foundation, Inc.
-Contributed by Gaius Mulley <gaius.mulley@southwales.ac.uk>.
-
-This file is part of GNU Modula-2.
-
-GNU Modula-2 is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
-
-GNU Modula-2 is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-General Public License for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-<http://www.gnu.org/licenses/>.  */
-
-#include <config.h>
-#include "m2rts.h"
-
-
-extern "C" int UnixArgs_GetArgC (void);
-extern "C" char **UnixArgs_GetArgV (void);
-extern "C" char **UnixArgs_GetEnvV (void);
-
-static int UnixArgs_ArgC;
-static char **UnixArgs_ArgV;
-static char **UnixArgs_EnvV;
-
-
-/* GetArgC returns argc.  */
-
-extern "C" int
-UnixArgs_GetArgC (void)
-{
-  return UnixArgs_ArgC;
-}
-
-
-/* GetArgV returns argv.  */
-
-extern "C" char **
-UnixArgs_GetArgV (void)
-{
-  return UnixArgs_ArgV;
-}
-
-
-/* GetEnvV returns envv.  */
-
-extern "C" char **
-UnixArgs_GetEnvV (void)
-{
-  return UnixArgs_EnvV;
-}
-
-
-extern "C" void
-_M2_UnixArgs_init (int argc, char *argv[], char *envp[])
-{
-  UnixArgs_ArgC = argc;
-  UnixArgs_ArgV = argv;
-  UnixArgs_EnvV = envp;
-}
-
-extern "C" void
-_M2_UnixArgs_finish (int argc, char *argv[], char *envp[])
-{
-}
-
-extern "C" void
-_M2_UnixArgs_dep (void)
-{
-}
-
-struct _M2_UnixArgs_ctor { _M2_UnixArgs_ctor (); } _M2_UnixArgs_ctor;
-
-_M2_UnixArgs_ctor::_M2_UnixArgs_ctor (void)
-{
-  M2RTS_RegisterModule ("UnixArgs", _M2_UnixArgs_init, _M2_UnixArgs_finish,
-			_M2_UnixArgs_dep);
-}
diff --git a/gcc/m2/gm2-libs-ch/dtoa.c b/gcc/m2/gm2-libs-ch/dtoa.c
deleted file mode 100644
index 57317588ba1..00000000000
--- a/gcc/m2/gm2-libs-ch/dtoa.c
+++ /dev/null
@@ -1,206 +0,0 @@
-/* dtoa.c provide floating point string conversion routines.
-
-Copyright (C) 2009-2022 Free Software Foundation, Inc.
-Contributed by Gaius Mulley <gaius@glam.ac.uk>.
-
-This file is part of GNU Modula-2.
-
-GNU Modula-2 is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
-
-GNU Modula-2 is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-General Public License for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-<http://www.gnu.org/licenses/>.  */
-
-#include "config.h"
-#include "system.h"
-#include "ansidecl.h"
-
-#include "gm2-libs-host.h"
-#include "m2rts.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define MAX_FP_DIGITS 500
-
-typedef enum Mode { maxsignicant, decimaldigits } Mode;
-
-/* maxsignicant: return a string containing max(1,ndigits)
-   significant digits.  The return string contains the string
-   produced by ecvt.  decimaldigits: return a string produced by
-   fcvt.  The string will contain ndigits past the decimal point
-   (ndigits may be negative).  */
-
-double
-dtoa_strtod (const char *s, int *error)
-{
-  char *endp;
-  double d;
-
-  errno = 0;
-  d = strtod (s, &endp);
-  if (endp != NULL && (*endp == '\0'))
-    *error = (errno != 0);
-  else
-    *error = TRUE;
-  return d;
-}
-
-/* dtoa_calcmaxsig - calculates the position of the decimal point it
-   also removes the decimal point and exponent from string, p.  */
-
-int
-dtoa_calcmaxsig (char *p, int ndigits)
-{
-  char *e;
-  char *o;
-  int x;
-
-  e = index (p, 'E');
-  if (e == NULL)
-    x = 0;
-  else
-    {
-      *e = (char)0;
-      x = atoi (e + 1);
-    }
-
-  o = index (p, '.');
-  if (o == NULL)
-    return strlen (p) + x;
-  else
-    {
-      memmove (o, o + 1, ndigits - (o - p));
-      return o - p + x;
-    }
-}
-
-/* dtoa_calcdecimal - calculates the position of the decimal point it
-   also removes the decimal point and exponent from string, p.  It
-   truncates the digits in p accordingly to ndigits.  Ie ndigits is
-   the number of digits after the '.' */
-
-int
-dtoa_calcdecimal (char *p, int str_size, int ndigits)
-{
-  char *e;
-  char *o;
-  int x;
-  int l;
-
-  e = index (p, 'E');
-  if (e == NULL)
-    x = 0;
-  else
-    {
-      *e = (char)0;
-      x = atoi (e + 1);
-    }
-
-  l = strlen (p);
-  o = index (p, '.');
-  if (o == NULL)
-    x += strlen (p);
-  else
-    {
-      int m = strlen (o);
-      memmove (o, o + 1, l - (o - p));
-      if (m > 0)
-        o[m - 1] = '0';
-      x += o - p;
-    }
-  if ((x + ndigits >= 0) && (x + ndigits < str_size))
-    p[x + ndigits] = (char)0;
-  return x;
-}
-
-int
-dtoa_calcsign (char *p, int str_size)
-{
-  if (p[0] == '-')
-    {
-      memmove (p, p + 1, str_size - 1);
-      return TRUE;
-    }
-  else
-    return FALSE;
-}
-
-char *
-dtoa_dtoa (double d, int mode, int ndigits, int *decpt, int *sign)
-{
-  char format[50];
-  char *p;
-  int r;
-  switch (mode)
-    {
-
-    case maxsignicant:
-      ndigits += 20; /* enough for exponent.  */
-      p = (char *) malloc (ndigits);
-      snprintf (format, 50, "%s%d%s", "%.", ndigits - 20, "E");
-      snprintf (p, ndigits, format, d);
-      *sign = dtoa_calcsign (p, ndigits);
-      *decpt = dtoa_calcmaxsig (p, ndigits);
-      return p;
-    case decimaldigits:
-      p = (char *) malloc (MAX_FP_DIGITS + 20);
-      snprintf (format, 50, "%s%d%s", "%.", MAX_FP_DIGITS, "E");
-      snprintf (p, MAX_FP_DIGITS + 20, format, d);
-      *sign = dtoa_calcsign (p, MAX_FP_DIGITS + 20);
-      *decpt = dtoa_calcdecimal (p, MAX_FP_DIGITS + 20, ndigits);
-      return p;
-    default:
-      abort ();
-    }
-}
-
-/* GNU Modula-2 hooks */
-
-void
-_M2_dtoa_init (int, char **, char **)
-{
-}
-
-void
-_M2_dtoa_finish (int, char **, char **)
-{
-}
-
-void
-_M2_dtoa_dep (void)
-{
-}
-
-#ifdef __cplusplus
-}
-
-struct _M2_dtoa_ctor { _M2_dtoa_ctor (); } _M2_dtoa_ctor;
-
-_M2_dtoa_ctor::_M2_dtoa_ctor (void)
-{
-  M2RTS_RegisterModule ("dtoa", _M2_dtoa_init, _M2_dtoa_finish,
-			_M2_dtoa_dep);
-}
-
-#else
-void
-_M2_dtoa_ctor (void)
-{
-}
-
-#endif
diff --git a/gcc/m2/gm2-libs-ch/ldtoa.c b/gcc/m2/gm2-libs-ch/ldtoa.c
deleted file mode 100644
index ac14297ec24..00000000000
--- a/gcc/m2/gm2-libs-ch/ldtoa.c
+++ /dev/null
@@ -1,135 +0,0 @@
-/* ldtoa.c provide long double floating point string conversion routines.
-
-Copyright (C) 2009-2022 Free Software Foundation, Inc.
-Contributed by Gaius Mulley <gaius@glam.ac.uk>.
-
-This file is part of GNU Modula-2.
-
-GNU Modula-2 is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
-
-GNU Modula-2 is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-General Public License for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
-<http://www.gnu.org/licenses/>.  */
-
-#include "config.h"
-#include "system.h"
-#include "ansidecl.h"
-
-#include "gm2-libs-host.h"
-#include "m2rts.h"
-
-#   ifdef __cplusplus
-extern "C" {
-#   endif
-
-#define MAX_FP_DIGITS 500
-
-typedef enum Mode { maxsignicant, decimaldigits } Mode;
-
-extern int dtoa_calcmaxsig (char *p, int ndigits);
-extern int dtoa_calcdecimal (char *p, int str_size, int ndigits);
-extern int dtoa_calcsign (char *p, int str_size);
-
-/* maxsignicant: return a string containing max(1,ndigits)
-   significant digits.  The return string contains the string
-   produced by snprintf.  decimaldigits: return a string produced by
-   fcvt.  The string will contain ndigits past the decimal point
-   (ndigits may be negative).  */
-
-long double
-ldtoa_strtold (const char *s, int *error)
-{
-  char *endp;
-  long double d;
-
-  errno = 0;
-#if defined(HAVE_STRTOLD)
-  d = strtold (s, &endp);
-#else
-  /* fall back to using strtod.  */
-  d = (long double)strtod (s, &endp);
-#endif
-  if (endp != NULL && (*endp == '\0'))
-    *error = (errno != 0);
-  else
-    *error = TRUE;
-  return d;
-}
-
-char *
-ldtoa_ldtoa (long double d, int mode, int ndigits, int *decpt, int *sign)
-{
-  char format[50];
-  char *p;
-  int r;
-  switch (mode)
-    {
-
-    case maxsignicant:
-      ndigits += 20; /* enough for exponent.  */
-      p = (char *) malloc (ndigits);
-      snprintf (format, 50, "%s%d%s", "%.", ndigits - 20, "LE");
-      snprintf (p, ndigits, format, d);
-      *sign = dtoa_calcsign (p, ndigits);
-      *decpt = dtoa_calcmaxsig (p, ndigits);
-      return p;
-    case decimaldigits:
-      p = (char *) malloc (MAX_FP_DIGITS + 20);
-      snprintf (format, 50, "%s%d%s", "%.", MAX_FP_DIGITS, "LE");
-      snprintf (p, MAX_FP_DIGITS + 20, format, d);
-      *sign = dtoa_calcsign (p, MAX_FP_DIGITS + 20);
-      *decpt = dtoa_calcdecimal (p, MAX_FP_DIGITS + 20, ndigits);
-      return p;
-    default:
-      abort ();
-    }
-}
-
-/* GNU Modula-2 hooks */
-
-void
-_M2_ldtoa_init (int, char **, char **)
-{
-}
-
-void
-_M2_ldtoa_finish (int, char **, char **)
-{
-}
-
-void
-_M2_ldtoa_dep (void)
-{
-}
-
-#   ifdef __cplusplus
-}
-
-struct _M2_ldtoa_ctor { _M2_ldtoa_ctor (); } _M2_ldtoa_ctor;
-
-_M2_ldtoa_ctor::_M2_ldtoa_ctor (void)
-{
-  M2RTS_RegisterModule ("ldtoa", _M2_ldtoa_init, _M2_ldtoa_finish,
-			_M2_ldtoa_dep);
-}
-
-#else
-void
-_M2_ldtoa_ctor (void)
-{
-}
-
-#   endif


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-07-07 16:03 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-07 16:03 [gcc/devel/modula-2] Renamed files from .c to .cc and added new support header files Gaius Mulley

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).