]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/d/d-builtins.cc
Update copyright years.
[thirdparty/gcc.git] / gcc / d / d-builtins.cc
index 2f7319c1effb9d7c7351a576b4ed761382b0d458..cb8f43a88e5b47cd0b972fe2d385912fdd1a87b6 100644 (file)
@@ -1,5 +1,5 @@
 /* d-builtins.cc -- GCC builtins support for D.
-   Copyright (C) 2006-2019 Free Software Foundation, Inc.
+   Copyright (C) 2006-2020 Free Software Foundation, Inc.
 
 GCC is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
@@ -197,20 +197,23 @@ build_frontend_type (tree type)
       break;
 
     case VECTOR_TYPE:
+    {
+      unsigned HOST_WIDE_INT nunits;
+      if (!TYPE_VECTOR_SUBPARTS (type).is_constant (&nunits))
+       break;
+
       dtype = build_frontend_type (TREE_TYPE (type));
-      if (dtype)
-       {
-         poly_uint64 nunits = TYPE_VECTOR_SUBPARTS (type);
-         dtype = dtype->sarrayOf (nunits.to_constant ())->addMod (mod);
+      if (!dtype)
+       break;
 
-         if (dtype->nextOf ()->isTypeBasic () == NULL)
-           break;
+      dtype = dtype->sarrayOf (nunits)->addMod (mod);
+      if (dtype->nextOf ()->isTypeBasic () == NULL)
+       break;
 
-         dtype = (TypeVector::create (Loc (), dtype))->addMod (mod);
-         builtin_converted_decls.safe_push (builtin_data (dtype, type));
-         return dtype;
-       }
-      break;
+      dtype = (TypeVector::create (Loc (), dtype))->addMod (mod);
+      builtin_converted_decls.safe_push (builtin_data (dtype, type));
+      return dtype;
+    }
 
     case RECORD_TYPE:
     {