aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface/decl.cc
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2023-04-13 23:11:38 +0200
committerMarc Poulhiès <poulhies@adacore.com>2023-05-30 09:12:16 +0200
commit9dbf6adb3e0f849d0622a59b6c722f0d868e6c25 (patch)
tree7e17e2e62e25b5f46a0617ffd1b7355c2fb55610 /gcc/ada/gcc-interface/decl.cc
parent9be806a5c671f9524a92cd610750bf8712bed149 (diff)
downloadgcc-9dbf6adb3e0f849d0622a59b6c722f0d868e6c25.zip
gcc-9dbf6adb3e0f849d0622a59b6c722f0d868e6c25.tar.gz
gcc-9dbf6adb3e0f849d0622a59b6c722f0d868e6c25.tar.bz2
ada: Fix fallout of recent fix for missing finalization
The original fix makes it possible to create transient scopes around return statements in more cases, but it overlooks that transient scopes are reused and, in particular, that they can be promoted to secondary stack management. gcc/ada/ * exp_ch7.adb (Find_Enclosing_Transient_Scope): Return the index in the scope table instead of the scope's entity. (Establish_Transient_Scope): If an enclosing scope already exists, do not set the Uses_Sec_Stack flag on it if the node to be wrapped is a return statement which requires secondary stack management.
Diffstat (limited to 'gcc/ada/gcc-interface/decl.cc')
0 files changed, 0 insertions, 0 deletions