]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - libcpp/expr.c
expr.c (interpret_float_suffix): Add a guard.
[thirdparty/gcc.git] / libcpp / expr.c
index d56e56a631114b98ee8f0e49ae7acadce8fca8d3..ca1c3d1928a9fa9c34baf9049b7baa8989d181a2 100644 (file)
@@ -110,12 +110,13 @@ interpret_float_suffix (const uchar *s, size_t len)
     }
 
   /* Recognize a fixed-point suffix.  */
-  switch (s[len-1])
-    {
-    case 'k': case 'K': flags = CPP_N_ACCUM; break;
-    case 'r': case 'R': flags = CPP_N_FRACT; break;
-    default: break;
-    }
+  if (len != 0)
+    switch (s[len-1])
+      {
+      case 'k': case 'K': flags = CPP_N_ACCUM; break;
+      case 'r': case 'R': flags = CPP_N_FRACT; break;
+      default: break;
+      }
 
   /* Continue processing a fixed-point suffix.  The suffix is case
      insensitive except for ll or LL.  Order is significant.  */