diff options
author | Richard Biener <rguenther@suse.de> | 2021-05-11 10:58:35 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2021-05-11 12:48:05 +0200 |
commit | ca8e8301180fa71de1a76769fc038df2ab85dfeb (patch) | |
tree | f6badc25ee1b91ebc8d74ef1ade19a8c53c4f6cc /gcc/ada/gcc-interface/ada-tree.h | |
parent | 9b905ba9ebba8d2cc805c26351225e7f74c02333 (diff) | |
download | gcc-ca8e8301180fa71de1a76769fc038df2ab85dfeb.zip gcc-ca8e8301180fa71de1a76769fc038df2ab85dfeb.tar.gz gcc-ca8e8301180fa71de1a76769fc038df2ab85dfeb.tar.bz2 |
middle-end/100509 - avoid folding constant to aggregate type
When folding a constant initializer looking through aliases to
incompatible types can lead to us trying to fold a constant
to an aggregate type which can't work. Simply avoid trying
to constant fold non-register typed symbols.
2021-05-11 Richard Biener <rguenther@suse.de>
PR middle-end/100509
* gimple-fold.c (fold_gimple_assign): Only call
get_symbol_constant_value on register type symbols.
* gcc.dg/pr100509.c: New testcase.
Diffstat (limited to 'gcc/ada/gcc-interface/ada-tree.h')
0 files changed, 0 insertions, 0 deletions