Boost logo

Boost :

From: Douglas Paul Gregor (gregod_at_[hidden])
Date: 2003-08-15 13:10:24


The test case libs/integer/cstdint_test.cpp includes <cassert> and
<iostream> _before_ it defines __STDC_CONSTANT_MACROS. This means that on
a platform that (a) supports defining the C99 macros in <stdint.h> when
__STDC_CONSTANT_MACROS is defined and (b) uses <stdint.h> somewhere in
<iostream>, the test fails, because __STDC_CONSTANT_MACROS has been
defined too late for <stdint.h> header to react (because it presumably has
include guards).

I believe the test case is wrong, and we should apply the patch below. Ok?

        Doug

Index: cstdint_test.cpp
===================================================================
RCS file: /cvsroot/boost/boost/libs/integer/cstdint_test.cpp,v
retrieving revision 1.7
diff -u -r1.7 cstdint_test.cpp
--- cstdint_test.cpp 5 Aug 2002 11:16:14 -0000 1.7
+++ cstdint_test.cpp 15 Aug 2003 17:52:41 -0000
@@ -13,9 +13,9 @@
 // 12 Nov 00 Adapted to merged <boost/cstdint.hpp>
 // 23 Sep 00 Added INTXX_C constant macro support + int64_t support
(John Maddock).
 // 28 Jun 00 Initial version
+#define __STDC_CONSTANT_MACROS
 #include <cassert>
 #include <iostream>
-#define __STDC_CONSTANT_MACROS
 #include <boost/cstdint.hpp>

 #ifdef NDEBUG


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk