[Ada] Spurious error with null Abstract_State
commit93bc357b34765dcc12709962a074c8001677c27b
authorHristian Kirtchev <kirtchev@adacore.com>
Mon, 16 Jul 2018 14:11:47 +0000 (16 14:11 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Mon, 16 Jul 2018 14:11:47 +0000 (16 14:11 +0000)
tree7e85803412e5bce56a7455172a6369b381871356
parent7da8b07f30c465a46e41202d897d74ed2ceb8396
[Ada] Spurious error with null Abstract_State

This patch corrects the mechanism which ensures that a package with a null
Abstract_State does not introduce hidden state, by ignoring internal states
and variables because they do not represent the "source" hidden state.

2018-07-16  Hristian Kirtchev  <kirtchev@adacore.com>

gcc/ada/

* sem_util.adb (Check_No_Hidden_State): Ignore internally-generated
states and variables.

gcc/testsuite/

* gnat.dg/abstract_state1.adb, gnat.dg/abstract_state1.ads: New
testcase.

From-SVN: r262722
gcc/ada/ChangeLog
gcc/ada/sem_util.adb
gcc/testsuite/ChangeLog
gcc/testsuite/gnat.dg/abstract_state1.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/abstract_state1.ads [new file with mode: 0644]