aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog11
-rw-r--r--gcc/ada/lib-xref.ads2
-rw-r--r--gcc/ada/sem_ch6.adb9
3 files changed, 21 insertions, 1 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index dc7b429..f8899ea 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,14 @@
+2010-06-14 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb (Analyze_Subprogram_Body): Do not check conformance when
+ the spec has been generated for a body without spec that carries an
+ Inline_Always pragma.
+
+2010-06-14 Arnaud Charlet <charlet@adacore.com>
+
+ * lib-xref.ads: Documentation change: allocate 'Z' letter to C/C++
+ macro.
+
2010-06-14 Jerome Lambourg <lambourg@adacore.com>
* exp_dbug.adb (Debug_Renaming_Declaration): Do not output any debug
diff --git a/gcc/ada/lib-xref.ads b/gcc/ada/lib-xref.ads
index 2e9c8d2..c36ccef 100644
--- a/gcc/ada/lib-xref.ads
+++ b/gcc/ada/lib-xref.ads
@@ -560,7 +560,7 @@ package Lib.Xref is
-- w protected object protected type
-- x abstract procedure exception
-- y abstract function entry or entry family
- -- z generic formal parameter (unused)
+ -- z generic formal parameter C/C++ macro
--------------------------------------
-- Handling of Imported Subprograms --
diff --git a/gcc/ada/sem_ch6.adb b/gcc/ada/sem_ch6.adb
index 16cd009..a263d82 100644
--- a/gcc/ada/sem_ch6.adb
+++ b/gcc/ada/sem_ch6.adb
@@ -2086,6 +2086,15 @@ package body Sem_Ch6 is
then
Conformant := True;
+ -- Conversely, the spec may have been generated for specless body
+ -- with an inline pragma.
+
+ elsif Comes_From_Source (N)
+ and then not Comes_From_Source (Spec_Id)
+ and then Has_Pragma_Inline (Spec_Id)
+ then
+ Conformant := True;
+
else
Check_Conformance
(Body_Id, Spec_Id,