summaryrefslogtreecommitdiff
path: root/gcc/ada/symbols-processing-vms-ia64.adb
diff options
context:
space:
mode:
authorbstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4>2009-07-15 11:24:46 +0000
committerbstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4>2009-07-15 11:24:46 +0000
commit56fcd3fede0e1c4489a3c108d95fd1ff38dfa1a5 (patch)
treef21ec6dd55e434aff16e698b0286153465775d62 /gcc/ada/symbols-processing-vms-ia64.adb
parentc2ce85c4e04bda844aa35dfdf41e69e585d97b2e (diff)
downloadgcc-56fcd3fede0e1c4489a3c108d95fd1ff38dfa1a5.tar.gz
2009-07-15 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk rev 149655 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@149682 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/symbols-processing-vms-ia64.adb')
-rw-r--r--gcc/ada/symbols-processing-vms-ia64.adb12
1 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ada/symbols-processing-vms-ia64.adb b/gcc/ada/symbols-processing-vms-ia64.adb
index 0eb1af7e4d6..beb099e40b0 100644
--- a/gcc/ada/symbols-processing-vms-ia64.adb
+++ b/gcc/ada/symbols-processing-vms-ia64.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 2004-2007, Free Software Foundation, Inc. --
+-- Copyright (C) 2004-2009, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -85,9 +85,14 @@ package body Processing is
Stname : Integer;
Stinfo : Character;
+ Stother : Character;
Sttype : Integer;
Stbind : Integer;
Stshndx : Integer;
+ Stvis : Integer;
+
+ STV_Internal : constant := 1;
+ STV_Hidden : constant := 2;
Section_Headers : Section_Header_Ptr;
@@ -340,7 +345,7 @@ package body Processing is
while Offset < End_Symtab loop
Get_Word (Stname);
Get_Byte (Stinfo);
- Get_Byte (B);
+ Get_Byte (Stother);
Get_Half (Stshndx);
for J in 1 .. 4 loop
Get_Word (W);
@@ -348,10 +353,13 @@ package body Processing is
Sttype := Integer'(Character'Pos (Stinfo)) mod 16;
Stbind := Integer'(Character'Pos (Stinfo)) / 16;
+ Stvis := Integer'(Character'Pos (Stother)) mod 4;
if (Sttype = 1 or else Sttype = 2)
and then Stbind /= 0
and then Stshndx /= 0
+ and then Stvis /= STV_Internal
+ and then Stvis /= STV_Hidden
then
-- Check if this is a symbol from a generic body