sem_prag.adb (Check_Form_Of_Interface_Name): Fix handling for CLI target.
authorArnaud Charlet <charlet@gcc.gnu.org>
Mon, 4 Aug 2008 09:06:36 +0000 (11:06 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Mon, 4 Aug 2008 09:06:36 +0000 (11:06 +0200)
2008-08-04  Arnaud Charlet  <charlet@adacore.com>

* sem_prag.adb (Check_Form_Of_Interface_Name): Fix handling for CLI
target.

From-SVN: r138586

gcc/ada/sem_prag.adb

index 84fff32..3ad8ff5 100644 (file)
@@ -3935,19 +3935,16 @@ package body Sem_Prag is
 
                if not In_Character_Range (C)
 
-                  --  Dubious if comma
+                  --  For all cases except external names on CLI target,
+                  --  commas, spaces and slashes are dubious (in CLI, we use
+                  --  spaces and commas in external names to specify assembly
+                  --  version and public key).
 
-                  or else Get_Character (C) = ','
-
-                  --  For all cases except link names on a CLI target, spaces
-                  --  and slashes are also dubious (in CLI for link names, we
-                  --  use spaces and possibly slashes for special purposes).
-
-                  --  Where is this usage documented ???
-
-                  or else ((Ext_Name_Case or else VM_Target /= CLI_Target)
+                  or else ((not Ext_Name_Case or else VM_Target /= CLI_Target)
                              and then (Get_Character (C) = ' '
                                          or else
+                                       Get_Character (C) = ','
+                                         or else
                                        Get_Character (C) = '/'
                                          or else
                                        Get_Character (C) = '\'))