aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorThomas Koenig <tkoenig@gcc.gnu.org>2020-12-20 16:27:01 +0100
committerThomas Koenig <tkoenig@gcc.gnu.org>2020-12-20 16:27:01 +0100
commit8d76c007afe4c70f51fd56b0e5b89522de5de61f (patch)
tree90ae7bbef6c21c05dba0b45f15de7437bbe57f6b /gcc
parentbebf930dd2b8bd94b84dee6df97bdcdf214b4a0e (diff)
downloadgcc-8d76c007afe4c70f51fd56b0e5b89522de5de61f.zip
gcc-8d76c007afe4c70f51fd56b0e5b89522de5de61f.tar.gz
gcc-8d76c007afe4c70f51fd56b0e5b89522de5de61f.tar.bz2
Set DECL_ARTIFICIAL on gfortran internal variables.
It seems we sometimes use DECL_ARTIFICIAL as choosing between different code paths. In order not to make -fdebug-aux-vars do different things, set DECL_ARTIFICIAL on the variables to avoid these different code paths (and the corresponding regressions). gcc/fortran/ChangeLog: * trans.c (create_var_debug_raw): Set DECL_ARTIFICIAL on variables.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/trans.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/fortran/trans.c b/gcc/fortran/trans.c
index 7ee2bd1..09104f3 100644
--- a/gcc/fortran/trans.c
+++ b/gcc/fortran/trans.c
@@ -97,6 +97,9 @@ create_var_debug_raw (tree type, const char *prefix)
t = build_decl (input_location, VAR_DECL, get_identifier (name_buf), type);
+ /* Not setting this causes some regressions. */
+ DECL_ARTIFICIAL (t) = 1;
+
/* We want debug info for it. */
DECL_IGNORED_P (t) = 0;
/* It should not be nameless. */