crux-musl

Unnamed repository; edit this file 'description' to name the repository.
git clone https://codeberg.org/emmett1/crux-musl
Log | Files | Refs | README | LICENSE

fix-nested-generic-lambda.patch (1158B)


      1 X-Git-Url: https://gcc.gnu.org/git/?p=gcc.git;a=blobdiff_plain;f=gcc%2Fcp%2Fpt.cc;h=79bc9c014c8504b7dddf094c4e2f36b4fa50d24b;hp=c7f4a95a7237ff91cbc0d81dc78de1ca35579b44;hb=396a4e76afec30d2461638f569cae18955eb4ad2;hpb=9410a52061ffe4a9e6ef8fd82f9c21d1874ff589
      2 
      3 diff --git a/gcc/cp/pt.cc b/gcc/cp/pt.cc
      4 index c7f4a95a723..79bc9c014c8 100644
      5 --- a/gcc/cp/pt.cc
      6 +++ b/gcc/cp/pt.cc
      7 @@ -4106,10 +4106,14 @@ find_parameter_packs_r (tree *tp, int *walk_subtrees, void* data)
      8      case TAG_DEFN:
      9        t = TREE_TYPE (t);
     10        if (CLASS_TYPE_P (t))
     11 -	/* Local class, need to look through the whole definition.  */
     12 -	for (tree bb : BINFO_BASE_BINFOS (TYPE_BINFO (t)))
     13 -	  cp_walk_tree (&BINFO_TYPE (bb), &find_parameter_packs_r,
     14 -			ppd, ppd->visited);
     15 +	{
     16 +	  /* Local class, need to look through the whole definition.
     17 +	     TYPE_BINFO might be unset for a partial instantiation.  */
     18 +	  if (TYPE_BINFO (t))
     19 +	    for (tree bb : BINFO_BASE_BINFOS (TYPE_BINFO (t)))
     20 +	      cp_walk_tree (&BINFO_TYPE (bb), &find_parameter_packs_r,
     21 +			    ppd, ppd->visited);
     22 +	}
     23        else
     24  	/* Enum, look at the values.  */
     25  	for (tree l = TYPE_VALUES (t); l; l = TREE_CHAIN (l))