Commit 676fa397 by Arnaud Charlet

[multiple changes]

2014-07-18  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Document that Wchar_T_Size and Word_Size are
	static attributes.

2014-07-18  Arnaud Charlet  <charlet@adacore.com>

	* a-witeio.adb, initialize.c: Update comments. Minor clean ups.

2014-07-18  Pascal Obry  <obry@adacore.com>

	* adaint.c: Do not include wchar.h on VxWorks.
	* mingw32.h: Remove obsolete definition.

From-SVN: r212812
parent cd077efd
2014-07-18 Robert Dewar <dewar@adacore.com>
* gnat_rm.texi: Document that Wchar_T_Size and Word_Size are
static attributes.
2014-07-18 Arnaud Charlet <charlet@adacore.com>
* a-witeio.adb, initialize.c: Update comments. Minor clean ups.
2014-07-18 Pascal Obry <obry@adacore.com>
* adaint.c: Do not include wchar.h on VxWorks.
* mingw32.h: Remove obsolete definition.
2014-07-18 Pascal Obry <obry@adacore.com> 2014-07-18 Pascal Obry <obry@adacore.com>
* a-textio.adb, a-witeio.adb, a-ztexio.adb: Use C_Streams Default_Text. * a-textio.adb, a-witeio.adb, a-ztexio.adb: Use C_Streams Default_Text.
......
...@@ -1227,13 +1227,13 @@ package body Ada.Wide_Text_IO is ...@@ -1227,13 +1227,13 @@ package body Ada.Wide_Text_IO is
(File : File_Type; (File : File_Type;
Item : Wide_Character) Item : Wide_Character)
is is
wide_text_translation_required : Boolean; wide_text_translation_required : Integer;
for wide_text_translation_required'Size use Character'Size; pragma Import
pragma Import (C, wide_text_translation_required, (C, wide_text_translation_required,
"__gnat_wide_text_translation_required"); "__gnat_wide_text_translation_required");
-- Text translation is required on Windows only. This means that the -- Text translation is required on Windows only. This means that the
-- console is doing translation and we do not want to do any encoding -- console is doing translation and we do not want to do any encoding
-- here. If this boolean is set we just output the character as-is. -- here. If this variable is not 0 we output the character via fputwc.
procedure Out_Char (C : Character); procedure Out_Char (C : Character);
-- Procedure to output one character of a wide character sequence -- Procedure to output one character of a wide character sequence
...@@ -1256,7 +1256,7 @@ package body Ada.Wide_Text_IO is ...@@ -1256,7 +1256,7 @@ package body Ada.Wide_Text_IO is
begin begin
FIO.Check_Write_Status (AP (File)); FIO.Check_Write_Status (AP (File));
if wide_text_translation_required if wide_text_translation_required /= 0
or else File.Text_Encoding /= Default_Text or else File.Text_Encoding /= Default_Text
then then
set_mode (fileno (File.Stream), File.Text_Encoding); set_mode (fileno (File.Stream), File.Text_Encoding);
......
...@@ -229,8 +229,10 @@ extern unsigned int LIB$CALLG_64 (unsigned long long argument_list [], ...@@ -229,8 +229,10 @@ extern unsigned int LIB$CALLG_64 (unsigned long long argument_list [],
#else #else
#include <utime.h> #include <utime.h>
#if ! defined (__vxworks)
#include <wchar.h> #include <wchar.h>
#endif #endif
#endif
#if defined (_WIN32) #if defined (_WIN32)
#include <process.h> #include <process.h>
......
...@@ -9896,13 +9896,14 @@ but, unlike @code{Size}, may be set for non-first subtypes. ...@@ -9896,13 +9896,14 @@ but, unlike @code{Size}, may be set for non-first subtypes.
@code{Standard'Wchar_T_Size} (@code{Standard} is the only permissible @code{Standard'Wchar_T_Size} (@code{Standard} is the only permissible
prefix) provides the size in bits of the C @code{wchar_t} type prefix) provides the size in bits of the C @code{wchar_t} type
primarily for constructing the definition of this type in primarily for constructing the definition of this type in
package @code{Interfaces.C}. package @code{Interfaces.C}. The result is a static constant.
@node Attribute Word_Size @node Attribute Word_Size
@unnumberedsec Attribute Word_Size @unnumberedsec Attribute Word_Size
@findex Word_Size @findex Word_Size
@code{Standard'Word_Size} (@code{Standard} is the only permissible @code{Standard'Word_Size} (@code{Standard} is the only permissible
prefix) provides the value @code{System.Word_Size}. prefix) provides the value @code{System.Word_Size}. The result is
a static constant.
@node Standard and Implementation Defined Restrictions @node Standard and Implementation Defined Restrictions
@chapter Standard and Implementation Defined Restrictions @chapter Standard and Implementation Defined Restrictions
......
...@@ -62,8 +62,8 @@ extern "C" { ...@@ -62,8 +62,8 @@ extern "C" {
/* __gnat_initialize (NT-mingw32 Version) */ /* __gnat_initialize (NT-mingw32 Version) */
/******************************************/ /******************************************/
char __gnat_wide_text_translation_required = 0; int __gnat_wide_text_translation_required = 0;
// wide text translation, 0=none, 1=activated /* wide text translation, 0=none, 1=activated */
#if defined (__MINGW32__) #if defined (__MINGW32__)
#include "mingw32.h" #include "mingw32.h"
......
...@@ -63,7 +63,6 @@ ...@@ -63,7 +63,6 @@
extern UINT CurrentCodePage; extern UINT CurrentCodePage;
extern UINT CurrentCCSEncoding; extern UINT CurrentCCSEncoding;
extern char __gnat_wide_text_translation_required;
/* Macros to convert to/from the code page specified in CurrentCodePage. */ /* Macros to convert to/from the code page specified in CurrentCodePage. */
#define S2WSC(wstr,str,len) \ #define S2WSC(wstr,str,len) \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment