This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Ada] Defaults that raise constraint_error


When a default value is inserted in a list of actuals, if the default is known
to raise constraint error it is replaced with an explicit raise node and a
warning is emitted. The default value may already be a Raise_Constraint_Error
node for example if it appears in a nested instantiation. In such a case the
node should not be rewritten, to prevent loops in the machinery that removes
warnings from code that is not in the main unit.
No simple example available.

Tested on x86_64-pc-linux-gnu, committed on trunk

2010-10-08  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb (Insert_Default): If default value is already a
	raise_constraint_error do not rewrite it as new raise node, to prevent
	infinite loops in the warning removal machinery.

Attachment: difs
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]