aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/ali.adb
diff options
context:
space:
mode:
authorRobert Dewar <dewar@adacore.com>2007-12-13 11:20:52 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2007-12-13 11:20:52 +0100
commitb917101e1c2a5318471e217e04f280023cd48c6a (patch)
tree1c8e06d9a692908c2062d3287c702c32b03ea3e4 /gcc/ada/ali.adb
parenta6e8413cd79b5c1775640ed5916eefdcee06af9d (diff)
downloadgcc-b917101e1c2a5318471e217e04f280023cd48c6a.zip
gcc-b917101e1c2a5318471e217e04f280023cd48c6a.tar.gz
gcc-b917101e1c2a5318471e217e04f280023cd48c6a.tar.bz2
a-textio.adb, [...]: Extensive changes to private part for wide character encoding
2007-12-06 Robert Dewar <dewar@adacore.com> * a-textio.adb, a-textio.ads: Extensive changes to private part for wide character encoding * a-witeio.ads, a-witeio.adb, a-ztexio.ads, a-ztexio.adb (Look_Ahead): Fix mishandling of encoded sequences Move declaration of Wch_Con to private part (should not be visible) * ali.adb (Scan_ALI): Set default encoding method to brackets instead of UTF-8. Probably this is never used, but if it is, brackets is clearly correct. * bindgen.adb (Get_WC_Encoding): New procedure to properly handle setting wide character encoding for no main program case and when encoding is specified using -W? Initialize stack limit of environment task if stack limit method of stack checking is enabled. (Gen_Adainit_Ada): Use Get_WC_Encoding to output encoding method (Gen_Adainit_C): Use Get_WC_Encoding to output encoding method (Get_Main_Unit_Name): New function. (Gen_Adainit_Ada): Add call to main program for .NET when needed. (Gen_Output_File): Set Bind_Main_Program to True for .NET * bindusg.adb: Add line for -Wx switch * s-wchcon.adb, s-wchcon.ads: (Is_Start_Of_Encoding): New function Add comments Add new useful constant WC_Longest_Sequences * switch-b.adb: Clean up handling of -Wx switch For -gnatWx, set Wide_Character_Encoding_Method_Specified * switch-c.adb: -gnatg activates warning on assertion errors For -gnatWx, set Wide_Character_Encoding_Method_Specified * s-wchcon.adb: (Is_Start_Of_Encoding): New function From-SVN: r130817
Diffstat (limited to 'gcc/ada/ali.adb')
-rw-r--r--gcc/ada/ali.adb14
1 files changed, 12 insertions, 2 deletions
diff --git a/gcc/ada/ali.adb b/gcc/ada/ali.adb
index 2605301..8466ddd 100644
--- a/gcc/ada/ali.adb
+++ b/gcc/ada/ali.adb
@@ -824,7 +824,7 @@ package body ALI is
Sfile => No_File,
Task_Dispatching_Policy => ' ',
Time_Slice_Value => -1,
- WC_Encoding => '8',
+ WC_Encoding => 'b',
Unit_Exception_Table => False,
Ver => (others => ' '),
Ver_Len => 0,
@@ -930,13 +930,23 @@ package body ALI is
else
Checkc (' ');
- Name_Len := 0;
+ -- Scan out argument
+
+ Name_Len := 0;
while not At_Eol loop
Name_Len := Name_Len + 1;
Name_Buffer (Name_Len) := Getc;
end loop;
+ -- If -fstack-check, record that it occurred
+
+ if Name_Buffer (1 .. Name_Len) = "-fstack-check" then
+ Stack_Check_Switch_Set := True;
+ end if;
+
+ -- Store the argument
+
Args.Increment_Last;
Args.Table (Args.Last) := new String'(Name_Buffer (1 .. Name_Len));