aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sysdep.c
diff options
context:
space:
mode:
authorEd Schonberg <schonberg@adacore.com>2019-07-01 13:36:56 +0000
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>2019-07-01 13:36:56 +0000
commit90fd73bbeaad8438a3251e061f8f6525691f3c30 (patch)
tree2f4f105ad34d7cfe70216ad8cd9cc29634a7dbef /gcc/ada/sysdep.c
parent69b5279e977593d656906288316ee03a8bf79c6a (diff)
downloadgcc-90fd73bbeaad8438a3251e061f8f6525691f3c30.zip
gcc-90fd73bbeaad8438a3251e061f8f6525691f3c30.tar.gz
gcc-90fd73bbeaad8438a3251e061f8f6525691f3c30.tar.bz2
[Ada] Wrong code with -gnatVa on lock-free protected objects
This patch fixes the handling of validity checks on protected objects that use the Lock-Free implementation when validity checks are enabled, previous to this patch the compiler would report improperly that a condition in a protected operation was always True (when comoipled with -gnatwa) and would generate incorrect code fhat operation. 2019-07-01 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * checks.adb (Insert_Valid_Check): Do not apply validity check to variable declared within a protected object that uses the Lock_Free implementation, to prevent unwarranted constant folding, because entities within such an object msut be treated as volatile. gcc/testsuite/ * gnat.dg/prot7.adb, gnat.dg/prot7.ads: New testcase. From-SVN: r272873
Diffstat (limited to 'gcc/ada/sysdep.c')
0 files changed, 0 insertions, 0 deletions