fortran: Fix off-by-one in buffer sizes.
authorSteve Kargl <kargl@gcc.gnu.org>
Sat, 27 Mar 2021 22:02:16 +0000 (15:02 -0700)
committerJerry DeLisle <jvdelisle@gcc.gnu.org>
Sat, 27 Mar 2021 22:02:16 +0000 (15:02 -0700)
gcc/fortran/ChangeLog:

* misc.c (gfc_typename): Fix off-by-one in buffer sizes.

gcc/fortran/misc.c

index 8a96243..3d449ae 100644 (file)
@@ -124,8 +124,10 @@ gfc_basic_typename (bt type)
 const char *
 gfc_typename (gfc_typespec *ts, bool for_hash)
 {
-  static char buffer1[GFC_MAX_SYMBOL_LEN + 7];  /* 7 for "TYPE()" + '\0'.  */
-  static char buffer2[GFC_MAX_SYMBOL_LEN + 7];
+  /* Need to add sufficient padding for "TYPE()" + '\0', "UNION()" + '\0',
+     or "CLASS()" + '\0'.  */
+  static char buffer1[GFC_MAX_SYMBOL_LEN + 8];
+  static char buffer2[GFC_MAX_SYMBOL_LEN + 8];
   static int flag = 0;
   char *buffer;
   gfc_typespec *ts1;