[pushed] ada-lang.c: Expand standard_exc's introductory comment.

Message ID 1398370923-14071-1-git-send-email-brobecker@adacore.com
State Committed
Headers

Commit Message

Joel Brobecker April 24, 2014, 8:22 p.m. UTC
  This patch expands standard_exc's introductory comment to explain
why this table does not include Numeric_Error.

gdb/ChangeLog:

        * ada-lang.c (standard_exc): Expand introductory comment.

Pushed after rebuilding GDB.

---
 gdb/ChangeLog  |  4 ++++
 gdb/ada-lang.c | 14 +++++++++++++-
 2 files changed, 17 insertions(+), 1 deletion(-)
  

Patch

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 06a3681..c0fda0a 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@ 
+2014-04-24  Joel Brobecker  <brobecker@adacore.com>
+
+	* ada-lang.c (standard_exc): Expand introductory comment.
+
 2014-04-24  Michael Sturm  <michael.sturm@mintel.com>
 	    Walfred Tedeschi  <walfred.tedeschi@intel.com>
 
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index 279c20e..da304ab 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -11294,7 +11294,19 @@  ada_modulus (struct type *type)
    variants of the runtime, we use a sniffer that will determine
    the runtime variant used by the program being debugged.  */
 
-/* Ada's standard exceptions.  */
+/* Ada's standard exceptions.
+
+   The Ada 83 standard also defined Numeric_Error.  But there so many
+   situations where it was unclear from the Ada 83 Reference Manual
+   (RM) whether Constraint_Error or Numeric_Error should be raised,
+   that the ARG (Ada Rapporteur Group) eventually issued a Binding
+   Interpretation saying that anytime the RM says that Numeric_Error
+   should be raised, the implementation may raise Constraint_Error.
+   Ada 95 went one step further and pretty much removed Numeric_Error
+   from the list of standard exceptions (it made it a renaming of
+   Constraint_Error, to help preserve compatibility when compiling
+   an Ada83 compiler). As such, we do not include Numeric_Error from
+   this list of standard exceptions.  */
 
 static char *standard_exc[] = {
   "constraint_error",