[Boost-bugs] [Boost C++ Libraries] #3669: Missing stdint.h header from pthread/once.cpp

Subject: [Boost-bugs] [Boost C++ Libraries] #3669: Missing stdint.h header from pthread/once.cpp
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-11-25 01:08:01


#3669: Missing stdint.h header from pthread/once.cpp
------------------------------------------+---------------------------------
 Reporter: mloskot <mateusz@…> | Owner: anthonyw
     Type: Patches | Status: new
Milestone: Boost 1.42.0 | Component: thread
  Version: Boost Development Trunk | Severity: Problem
 Keywords: |
------------------------------------------+---------------------------------
 In file [source:trunk/libs/thread/src/pthread/once.cpp_at_43799#L16
 libs/thread/src/pthread/once.cpp:16] standard macro ''UINTMAX_C'' is used,
 but stdint.h header is not included.

 This causes compilation error when building using Comeau with GCC on Linux
 32-bit (Ubuntu 9.04):

 {{{
 mloskot_at_vb-ubuntu904:~/dev/boost/_svn/trunk/libs/thread/build$ colorbb
 --v2 link=static
 ...patience...
 ...found 519 targets...
 ...updating 2 targets...
 como-linux.compile.c++ ../../../bin.v2/libs/thread/build/como-linux/debug
 /link-static/threading-multi/pthread/once.o
 Comeau C/C++ 4.3.10.1 (May 7 2008 12:23:21) for LINUX_INTEL_ELF_Beta
 Copyright 1988-2008 Comeau Computing. All rights reserved.
 MODE:non-strict warnings C++ noC++0x_extensions

 "../../../libs/thread/src/pthread/once.cpp", line 16: error: identifier
           "UINTMAX_C" is undefined
           BOOST_THREAD_DECL boost::uintmax_t
 once_global_epoch=UINTMAX_C(~0);
                                                                ^

 1 error detected in the compilation of
 "../../../libs/thread/src/pthread/once.cpp".

     como -tused -c --long_long -DBOOST_ALL_NO_LIB=1
 -DBOOST_THREAD_BUILD_LIB=1 -DBOOST_THREAD_POSIX -D_GNU_SOURCE -D_REENTRANT
 --no_inlining -O0 -g --exceptions -I"../../.." -o
 "../../../bin.v2/libs/thread/build/como-linux/debug/link-static/threading-
 multi/pthread/once.o" "../../../libs/thread/src/pthread/once.cpp" 2>&1

 ...failed como-linux.compile.c++ ../../../bin.v2/libs/thread/build/como-
 linux/debug/link-static/threading-multi/pthread/once.o...
 ...skipped <p../../../bin.v2/libs/thread/build/como-linux/debug/link-
 static/threading-multi>libboost_thread.a for lack of
 <p../../../bin.v2/libs/thread/build/como-linux/debug/link-static
 /threading-multi>pthread/once.o...
 ...failed updating 1 target...
 ...skipped 1 target...
 }}}

 By the way, you may notice that I call ''como'' compiler with two extra
 macros defined:
 {{{
 -D_GNU_SOURCE -D_REENTRANT
 }}}

 They are required to enable C99 and POSIX features for ''como'' toolset. I
 added them to build/Jamfile.v2. However, I'm not including this changes in
 the patch, because I'm still testing it to confirm it's the right
 solution. I posted detailed explanation to ml as
 [http://thread.gmane.org/gmane.comp.lib.boost.devel/196904 First results
 using Comeau C/C++ compiler] thread.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/3669>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:01 UTC