(Remove_Checks): New procedure * checks.adb: (Remove_Checks): New procedure * exp_util.adb: Use new Duplicate_Subexpr functions (Duplicate_Subexpr_No_Checks): New procedure (Duplicate_Subexpr_No_Checks_Orig): New procedure (Duplicate_Subexpr): Restore original form (checks duplicated) (Duplicate_Subexpr): Call Remove_Checks * exp_util.ads: (Duplicate_Subexpr_No_Checks): New procedure (Duplicate_Subexpr_No_Checks_Orig): New procedure Add 2002 to copyright notice * sem_util.adb: Use new Duplicate_Subexpr functions * sem_eval.adb: (Eval_Indexed_Component): This is the place to call Constant_Array_Ref and to replace the value. We simply merge the code of this function in here, since it is now no longer used elsewhere. This fixes the problem of the back end not realizing we were clever enough to see that this was constant. (Expr_Val): Remove call to Constant_Array_Ref (Expr_Rep_Val): Remove call to Constant_Array_Ref Minor reformatting (Constant_Array_Ref): Deal with string literals (patch suggested by Zack Weinberg on the gcc list) * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig => Duplicate_Subexpr_Move_Checks. * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig => Duplicate_Subexpr_Move_Checks. * sem_eval.adb: (Constant_Array_Ref): Verify that constant value of array exists before retrieving it (it may a private protected component in a function). From-SVN: r51513
Name |
Last commit
|
Last update |
---|---|---|
INSTALL | Loading commit data... | |
boehm-gc | Loading commit data... | |
config | Loading commit data... | |
contrib | Loading commit data... | |
fastjar | Loading commit data... | |
gcc | Loading commit data... | |
include | Loading commit data... | |
libchill | Loading commit data... | |
libf2c | Loading commit data... | |
libffi | Loading commit data... | |
libiberty | Loading commit data... | |
libjava | Loading commit data... | |
libobjc | Loading commit data... | |
libstdc++-v3 | Loading commit data... | |
maintainer-scripts | Loading commit data... | |
zlib | Loading commit data... | |
.cvsignore | Loading commit data... | |
COPYING | Loading commit data... | |
COPYING.LIB | Loading commit data... | |
ChangeLog | Loading commit data... | |
MAINTAINERS | Loading commit data... | |
Makefile.in | Loading commit data... | |
README | Loading commit data... | |
config-ml.in | Loading commit data... | |
config.guess | Loading commit data... | |
config.if | Loading commit data... | |
config.sub | Loading commit data... | |
configure | Loading commit data... | |
configure.in | Loading commit data... | |
install-sh | Loading commit data... | |
libtool.m4 | Loading commit data... | |
ltcf-c.sh | Loading commit data... | |
ltcf-cxx.sh | Loading commit data... | |
ltcf-gcj.sh | Loading commit data... | |
ltconfig | Loading commit data... | |
ltmain.sh | Loading commit data... | |
missing | Loading commit data... | |
mkdep | Loading commit data... | |
mkinstalldirs | Loading commit data... | |
move-if-change | Loading commit data... | |
symlink-tree | Loading commit data... | |
ylwrap | Loading commit data... |