From d20fa5cf61e785b51994a78dec2bec1d46624a6b Mon Sep 17 00:00:00 2001
From: Bob Dubner <rdubner@symas.com>
Date: Tue, 9 Apr 2024 17:05:57 -0400
Subject: [PATCH] Put body of allocation of cblc_refer_type_node onto the stack

---
 gcc/cobol/genutil.cc | 19 +------------------
 1 file changed, 1 insertion(+), 18 deletions(-)

diff --git a/gcc/cobol/genutil.cc b/gcc/cobol/genutil.cc
index 6e82bb92fdbc..e675bcf054e1 100644
--- a/gcc/cobol/genutil.cc
+++ b/gcc/cobol/genutil.cc
@@ -2431,12 +2431,7 @@ refer_fill_internal(cbl_refer_t &refer, refer_type_t refer_type)
           refer.field ? refer.field->name : "noname",
           counter++);
 
-  //// Trying to switch the next statement to vs_stack rather than vs_static.
-  //// That's a work in progress; at this time putting these on the stack results
-  //// in intermittent errors.  Apparently such data sometimes, but not always,
-  //// gets lost before it is used.  RJD 2024-04-07
-  refer.refer_decl_node = gg_define_variable(cblc_refer_type_node, ach, vs_static);
-//  refer.refer_decl_node = gg_define_variable(cblc_refer_type_node, ach, vs_stack);
+  refer.refer_decl_node = gg_define_variable(cblc_refer_type_node, ach, vs_stack);
   gg_memset(gg_get_address_of(refer.refer_decl_node),
             integer_zero_node,
             build_int_cst_type(SIZE_T, sizeof(cblc_refer_t)));
@@ -2467,18 +2462,6 @@ refer_fill_internal(cbl_refer_t &refer, refer_type_t refer_type)
         {
         gg_assign(member(refer.refer_decl_node, "qual_data"),
                   gg_cast(UCHAR_P, member(refer.field->var_decl_node, "initial")));
-#if 0
-        if( refer.field->attr & hex_encoded_e )
-          {
-          gg_assign(member(refer.refer_decl_node, "qual_size"),
-                    build_int_cst_type(SIZE_T, refer.field->data.capacity));
-          }
-        else
-          {
-          gg_assign(member(refer.refer_decl_node, "qual_size"),
-                    build_int_cst_type(SIZE_T, strlen(refer.field->data.initial)));
-          }
-#endif
         gg_assign(member(refer.refer_decl_node, "qual_size"),
                   build_int_cst_type(SIZE_T, refer.field->data.capacity));
         }
-- 
GitLab