https://gcc.gnu.org/g:623d8e6272d915e76f1d607a95db9d1624cec572

commit 623d8e6272d915e76f1d607a95db9d1624cec572
Author: Thomas Koenig <tkoe...@gcc.gnu.org>
Date:   Sun Jul 21 14:58:54 2024 +0200

    Initial version - add do-nothing -funsigned option and BT_UNSIGNED.

Diff:
---
 gcc/fortran/expr.cc       | 3 +++
 gcc/fortran/lang.opt      | 4 ++++
 gcc/fortran/trans-decl.cc | 4 ++++
 gcc/fortran/trans-expr.cc | 4 ++++
 4 files changed, 15 insertions(+)

diff --git a/gcc/fortran/expr.cc b/gcc/fortran/expr.cc
index be138d196a23..8de694e31da7 100644
--- a/gcc/fortran/expr.cc
+++ b/gcc/fortran/expr.cc
@@ -350,6 +350,9 @@ gfc_copy_expr (gfc_expr *p)
          strncpy (q->boz.str, p->boz.str, p->boz.len);
          break;
 
+       case BT_UNSIGNED:
+         gfc_internal_error ("Unsigned not yet implemented");
+
        case BT_PROCEDURE:
         case BT_VOID:
            /* Should never be reached.  */
diff --git a/gcc/fortran/lang.opt b/gcc/fortran/lang.opt
index 5efd4a0129a6..320c31771f81 100644
--- a/gcc/fortran/lang.opt
+++ b/gcc/fortran/lang.opt
@@ -784,6 +784,10 @@ frepack-arrays
 Fortran Var(flag_repack_arrays)
 Copy array sections into a contiguous block on procedure entry.
 
+funsigned
+Fortran Var(flag_unsigned)
+Experimental unsigned numbers.
+
 fcoarray=
 Fortran RejectNegative Joined Enum(gfc_fcoarray) Var(flag_coarray) 
Init(GFC_FCOARRAY_NONE)
 -fcoarray=<none|single|lib>    Specify which coarray parallelization should be 
used.
diff --git a/gcc/fortran/trans-decl.cc b/gcc/fortran/trans-decl.cc
index e6ac7f25b3b0..436a4051c057 100644
--- a/gcc/fortran/trans-decl.cc
+++ b/gcc/fortran/trans-decl.cc
@@ -7060,6 +7060,10 @@ gfc_conv_cfi_to_gfc (stmtblock_t *init, stmtblock_t 
*finally,
                  type = (sym->ts.u.derived->intmod_sym_id == ISOCBINDING_FUNPTR
                        ? CFI_type_cfunptr : CFI_type_cptr);
                  break;
+
+             case BT_UNSIGNED:
+               gfc_internal_error ("Unsigned not yet implemented");
+
                case BT_ASSUMED:
                case BT_CLASS:
                case BT_PROCEDURE:
diff --git a/gcc/fortran/trans-expr.cc b/gcc/fortran/trans-expr.cc
index d9eb333abcb1..d431ed5bdea7 100644
--- a/gcc/fortran/trans-expr.cc
+++ b/gcc/fortran/trans-expr.cc
@@ -5822,6 +5822,10 @@ gfc_conv_gfc_desc_to_cfi_desc (gfc_se *parmse, gfc_expr 
*e, gfc_symbol *fsym)
            }
          else
            gcc_unreachable ();
+
+       case BT_UNSIGNED:
+         gfc_internal_error ("Unsigned not yet implemented");
+
        case BT_PROCEDURE:
        case BT_HOLLERITH:
        case BT_UNION:

Reply via email to