* semantics.c (force_paren_expr): Preserve location.
authorJason Merrill <jason@redhat.com>
Mon, 5 Aug 2019 17:38:18 +0000 (13:38 -0400)
committerJason Merrill <jason@gcc.gnu.org>
Mon, 5 Aug 2019 17:38:18 +0000 (13:38 -0400)
From-SVN: r274120

gcc/cp/ChangeLog
gcc/cp/semantics.c

index 2715966..2b281c1 100644 (file)
@@ -1,3 +1,7 @@
+2019-08-05  Jason Merrill  <jason@redhat.com>
+
+       * semantics.c (force_paren_expr): Preserve location.
+
 2019-08-02  Marek Polacek  <polacek@redhat.com>
 
        PR c++/91230 - wrong error with __PRETTY_FUNCTION__ and generic lambda.
index 269092d..fc90c8d 100644 (file)
@@ -1745,14 +1745,16 @@ force_paren_expr (tree expr)
       && TREE_CODE (expr) != SCOPE_REF)
     return expr;
 
+  location_t loc = cp_expr_location (expr);
+
   if (TREE_CODE (expr) == COMPONENT_REF
       || TREE_CODE (expr) == SCOPE_REF)
     REF_PARENTHESIZED_P (expr) = true;
   else if (processing_template_decl)
-    expr = build1 (PAREN_EXPR, TREE_TYPE (expr), expr);
+    expr = build1_loc (loc, PAREN_EXPR, TREE_TYPE (expr), expr);
   else
     {
-      expr = build1 (VIEW_CONVERT_EXPR, TREE_TYPE (expr), expr);
+      expr = build1_loc (loc, VIEW_CONVERT_EXPR, TREE_TYPE (expr), expr);
       REF_PARENTHESIZED_P (expr) = true;
     }