https://gcc.gnu.org/g:19bf2732ae4ad0c37c2493e82cc500724de746a8

commit r14-11348-g19bf2732ae4ad0c37c2493e82cc500724de746a8
Author: Iain Sandoe <iains....@gmail.com>
Date:   Thu Jan 30 08:19:21 2025 +0000

    c++: Update const_decl handling after r15-7259 [PR118673].
    
    Objective-C++ uses CONST_DECLs to hold constant string objects
    these should also be treated as mergable lvalues.
    
            PR c++/118673
    
    gcc/cp/ChangeLog:
    
            * tree.cc (lvalue_kind): Mark CONST_DECLs as mergable
            when they are also TREE_STATIC.
    
    Signed-off-by: Iain Sandoe <i...@sandoe.co.uk>

Diff:
---
 gcc/cp/tree.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/cp/tree.cc b/gcc/cp/tree.cc
index b37d4605e06c..abed2ce859c7 100644
--- a/gcc/cp/tree.cc
+++ b/gcc/cp/tree.cc
@@ -213,7 +213,7 @@ lvalue_kind (const_tree ref)
          && DECL_IN_AGGR_P (ref))
        return clk_none;
 
-      if (DECL_MERGEABLE (ref))
+      if (TREE_CODE (ref) == CONST_DECL || DECL_MERGEABLE (ref))
        return clk_ordinary | clk_mergeable;
 
       /* FALLTHRU */

Reply via email to