public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r13-863] c++: use current_template_constraints more
@ 2022-05-31 12:21 Patrick Palka
  0 siblings, 0 replies; only message in thread
From: Patrick Palka @ 2022-05-31 12:21 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:b5cf960e29fe59772b8bf5fca068e7139651255b

commit r13-863-gb5cf960e29fe59772b8bf5fca068e7139651255b
Author: Patrick Palka <ppalka@redhat.com>
Date:   Tue May 31 08:17:21 2022 -0400

    c++: use current_template_constraints more
    
    gcc/cp/ChangeLog:
    
            * decl.cc (grokvardecl): Use current_template_constraints.
            (grokdeclarator): Likewise.
            (xref_tag): Likewise.
            * semantics.cc (finish_template_template_parm): Likewise.

Diff:
---
 gcc/cp/decl.cc      | 17 ++++-------------
 gcc/cp/semantics.cc |  3 +--
 2 files changed, 5 insertions(+), 15 deletions(-)

diff --git a/gcc/cp/decl.cc b/gcc/cp/decl.cc
index 892e4a4b19b..663a72fae15 100644
--- a/gcc/cp/decl.cc
+++ b/gcc/cp/decl.cc
@@ -10789,9 +10789,7 @@ grokvardecl (tree type,
   else if (flag_concepts
 	   && current_template_depth > template_class_depth (scope))
     {
-      tree reqs = TEMPLATE_PARMS_CONSTRAINTS (current_template_parms);
-      tree ci = build_constraints (reqs, NULL_TREE);
-
+      tree ci = current_template_constraints ();
       set_constraints (decl, ci);
     }
 
@@ -14227,9 +14225,7 @@ grokdeclarator (const cp_declarator *declarator,
 				> template_class_depth (current_class_type));
 		if (memtmpl)
 		  {
-		    tree tmpl_reqs
-		      = TEMPLATE_PARMS_CONSTRAINTS (current_template_parms);
-		    tree ci = build_constraints (tmpl_reqs, NULL_TREE);
+		    tree ci = current_template_constraints ();
 		    set_constraints (decl, ci);
 		  }
 	      }
@@ -15852,13 +15848,8 @@ xref_tag (enum tag_types tag_code, tree name,
         {
           /* Check that we aren't trying to overload a class with different
              constraints.  */
-          tree constr = NULL_TREE;
-          if (current_template_parms)
-            {
-              tree reqs = TEMPLATE_PARMS_CONSTRAINTS (current_template_parms);
-              constr = build_constraints (reqs, NULL_TREE);
-            }
-	  if (!redeclare_class_template (t, current_template_parms, constr))
+	  if (!redeclare_class_template (t, current_template_parms,
+					 current_template_constraints ()))
 	    return error_mark_node;
         }
       else if (!processing_template_decl
diff --git a/gcc/cp/semantics.cc b/gcc/cp/semantics.cc
index 1d012d60724..3600d270ff8 100644
--- a/gcc/cp/semantics.cc
+++ b/gcc/cp/semantics.cc
@@ -3387,8 +3387,7 @@ finish_template_template_parm (tree aggr, tree identifier)
 
   /* Associate the constraints with the underlying declaration,
      not the template.  */
-  tree reqs = TEMPLATE_PARMS_CONSTRAINTS (current_template_parms);
-  tree constr = build_constraints (reqs, NULL_TREE);
+  tree constr = current_template_constraints ();
   set_constraints (decl, constr);
 
   end_template_decl ();


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-05-31 12:21 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-31 12:21 [gcc r13-863] c++: use current_template_constraints more Patrick Palka

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).