rs6000: Skip overload instances with uninitialized fntype (PR103622)
authorBill Schmidt <wschmidt@linux.ibm.com>
Wed, 5 Jan 2022 22:53:29 +0000 (16:53 -0600)
committerBill Schmidt <wschmidt@linux.ibm.com>
Wed, 5 Jan 2022 22:54:48 +0000 (16:54 -0600)
2022-01-05  Bill Schmidt  <wschmidt@linux.ibm.com>

gcc/
PR target/103622
* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
Skip over instances with undefined function types.

gcc/config/rs6000/rs6000-c.c

index db64af9..24a081c 100644 (file)
@@ -2002,6 +2002,12 @@ altivec_resolve_overloaded_builtin (location_t loc, tree fndecl,
         the overloaded call to that instance.  */
       for (; instance != NULL; instance = instance->next)
        {
+         /* It is possible for an instance to require a data type that isn't
+            defined on this target, in which case instance->fntype will be
+            NULL.  */
+         if (!instance->fntype)
+           continue;
+
          bool mismatch = false;
          tree nextparm = TYPE_ARG_TYPES (instance->fntype);