diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-04-17 09:51:08 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-04-17 09:51:08 +0000 |
commit | f60cc57dd8b8f3fdb555b23fcc2b5aeba03e5c01 (patch) | |
tree | 764f35cd7165193222fc6482634c43fce750c1af /gcc/ada/initialize.c | |
parent | 8fea528f6f6da82d9922dacf9c69646a54a3701a (diff) | |
download | gcc-f60cc57dd8b8f3fdb555b23fcc2b5aeba03e5c01.tar.gz |
2009-04-17 Eric Botcazou <ebotcazou@adacore.com>
* exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os.
2009-04-17 Pascal Obry <obry@adacore.com>
* mingw32.h: Add S2WSC and WS2SC macros to convert to/from
CurrentCodePage.
* adaint.h: Encoding_Unspecified is now defined. Corresponds to the
value when no encoding form paramter is set on Text_IO services.
* adaint.c: CurrentCodePage new variable on Windows.
Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
ones.
* mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
ones.
* initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE
environment variable value. Default is UTF-8.
* s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type.
fopen and freopen encoding parameter is now set to Unspecified.
The default value is in this case UTF-8 (as it was before) but
use the new macros that convert to/from the code page set
at runtime (CurrentCodePage).
* s-fileio.adb: When no encoding specified use Unspecified value.
2009-04-17 Ed Schonberg <schonberg@adacore.com>
* atree.adb, atree.ads: Remove dead code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146235 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/initialize.c')
-rw-r--r-- | gcc/ada/initialize.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/gcc/ada/initialize.c b/gcc/ada/initialize.c index 5e7b2ff133a..ef51f709857 100644 --- a/gcc/ada/initialize.c +++ b/gcc/ada/initialize.c @@ -81,6 +81,22 @@ __gnat_initialize (void *eh) given that we have set Max_Digits etc with this in mind */ __gnat_init_float (); +#ifdef GNAT_UNICODE_SUPPORT + /* Set current code page for filenames handling. */ + { + char *codepage = getenv ("GNAT_CODE_PAGE"); + + /* Default code page is UTF-8. */ + CurrentCodePage = CP_UTF8; + + if (codepage != NULL) + if (strcmp (codepage, "CP_ACP") == 0) + CurrentCodePage = CP_ACP; + else if (strcmp (codepage, "CP_UTF8") == 0) + CurrentCodePage = CP_UTF8; + } +#endif + /* Adjust gnat_argv to support Unicode characters. */ { char arg_utf8[MAX_PATH]; @@ -97,7 +113,7 @@ __gnat_initialize (void *eh) for (k=0; k<wargc; k++) { - WS2SU (arg_utf8, wargv[k], MAX_PATH); + WS2SC (arg_utf8, wargv[k], MAX_PATH); gnat_argv[k] = (char *) xmalloc (strlen (arg_utf8) + 1); strcpy (gnat_argv[k], arg_utf8); } |