diff options
author | Robert Dewar <dewar@adacore.com> | 2007-12-13 11:20:52 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2007-12-13 11:20:52 +0100 |
commit | b917101e1c2a5318471e217e04f280023cd48c6a (patch) | |
tree | 1c8e06d9a692908c2062d3287c702c32b03ea3e4 /gcc/ada/ali.adb | |
parent | a6e8413cd79b5c1775640ed5916eefdcee06af9d (diff) | |
download | gcc-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.adb | 14 |
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)); |