wchar_t is a C++ built in and should not (always) be defined

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4128 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo
2011-11-29 14:26:12 +00:00
parent f4a014fc2f
commit 34f1a907b4
4 changed files with 18 additions and 6 deletions
+3
View File
@@ -2222,3 +2222,6 @@
STM32F50xxx family of MCUs. STM32F50xxx family of MCUs.
* configs/stm3240g-eval: Add framework for the STMicro STM3240G-EVAL * configs/stm3240g-eval: Add framework for the STMicro STM3240G-EVAL
board. board.
* include/sys/types.h: wchar_t is a builtin type in C++ and its
declaration can cause errors with certain C++ compilers.
+7 -4
View File
@@ -1260,6 +1260,9 @@ interface of the same name.
If the message queue is full and <code>NON_BLOCK</code> is set, the message If the message queue is full and <code>NON_BLOCK</code> is set, the message
is not queued and <code>ERROR</code> is returned. is not queued and <code>ERROR</code> is returned.
</p> </p>
<p>
<b>NOTE</b>: <i>mq_send()</i> may be called from an interrupt handler.
<p>
<p> <p>
<b>Input Parameters:</b> <b>Input Parameters:</b>
</p> </p>
@@ -2236,7 +2239,7 @@ If the value of the semaphore resulting from this operation is zero, then
on of the tasks blocked waiting for the semaphore will be allowed to on of the tasks blocked waiting for the semaphore will be allowed to
return successfully from its call to <i>sem_wait()</i>. return successfully from its call to <i>sem_wait()</i>.
<p> <p>
<b>NOTE</b>: <i>sem_post()</i> may be called from an interrupt handler. <b>NOTE</b>: <i>sem_post()</i> may be called from an interrupt handler.
<p> <p>
<b>Input Parameters:</b> <b>Input Parameters:</b>
<ul> <ul>
@@ -2250,9 +2253,9 @@ return successfully from its call to <i>sem_wait()</i>.
</ul> </ul>
<p> <p>
<b>Assumptions/Limitations:</b> This function cannot be called <b>Assumptions/Limitations:</b>.
from an interrupt handler. It assumes the currently executing When called from an interrupt handler, it will appear as though the
task is the one that is performing the unlock. interrupt task is the one that is performing the unlock.
<p> <p>
<b> POSIX Compatibility:</b> Comparable to the POSIX <b> POSIX Compatibility:</b> Comparable to the POSIX
interface of the same name. interface of the same name.
+2 -1
View File
@@ -49,6 +49,7 @@ ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHWARNINGSXX = -Wall -Wshadow ARCHWARNINGSXX = -Wall -Wshadow
ARCHDEFINES = ARCHDEFINES =
ARCHDEFINESXX = -DCONFIG_WCHAR_BUILTIN
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHINCLUDESXX = -I. -isystem $(TOPDIR)/include -isystem $(TOPDIR)/include/cxx ARCHINCLUDESXX = -I. -isystem $(TOPDIR)/include -isystem $(TOPDIR)/include/cxx
ARCHSCRIPT = ARCHSCRIPT =
@@ -66,7 +67,7 @@ OBJDUMP = $(CROSSDEV)objdump
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \ CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe
CXXFLAGS = $(ARCHWARNINGSXX) $(ARCHOPTIMIZATION) \ CXXFLAGS = $(ARCHWARNINGSXX) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGSXX) $(ARCHINCLUDESXX) $(ARCHDEFINES) $(EXTRADEFINES) -pipe $(ARCHCPUFLAGSXX) $(ARCHINCLUDESXX) $(ARCHDEFINESXX) $(EXTRADEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
AFLAGS = $(CFLAGS) -D__ASSEMBLY__ AFLAGS = $(CFLAGS) -D__ASSEMBLY__
+6 -1
View File
@@ -165,9 +165,14 @@ typedef unsigned int id_t;
typedef intptr_t ptrdiff_t; typedef intptr_t ptrdiff_t;
/* Wide, 16-bit character types */ /* Wide, 16-bit character types. wchar_t is a built-in type in C++ and
* its declaration here may cause compilation errors on some compilers
* if -DCONFIG_WCHAR_BUILTIN is not included in the CXXFLAGS.
*/
#ifndef CONFIG_WCHAR_BUILTIN
typedef uint16_t wchar_t; typedef uint16_t wchar_t;
#endif
/* blkcnt_t and off_t are signed integer types. /* blkcnt_t and off_t are signed integer types.
* *