+++ /dev/null
-//We are including stdlib.h and stddef.h first because under MSVC
-//those headers contains a errno macro definition without the underlying value
-//definition.
-#include <stdlib.h>
-#include <stddef.h>
-
-#include <errno.h>
-#include <errno.h> // not typo, check errno def/undef/redef
-
-#ifndef _STLP_WCE
-
-#include "cppunit/cppunit_proxy.h"
-
-//
-// TestCase class
-//
-class ErrnoTest : public CPPUNIT_NS::TestCase
-{
- CPPUNIT_TEST_SUITE(ErrnoTest);
- CPPUNIT_TEST(check);
- CPPUNIT_TEST_SUITE_END();
-
-protected:
- void check();
-};
-
-CPPUNIT_TEST_SUITE_REGISTRATION(ErrnoTest);
-
-void ErrnoTest::check()
-{
- //We are using ERANGE as it is part of the C++ ISO (see Table 26 in section 19.3)
- //Using ERANGE improve the test as it means that the native errno.h file has really
- //been included.
- errno = ERANGE;
-
- CPPUNIT_ASSERT( errno == ERANGE );
- errno = 0;
-
-/* Note: in common, you can't write ::errno or std::errno,
- * due to errno in most cases is just a macro, that frequently
- * (in MT environment errno is a per-thread value) expand to something like
- * (*__errno_location()). I don't know way how masquerade such
- * things: name of macro can't include ::.
- *
- * - ptr, 2005-03-30
- */
-# if 0
- if ( ::errno != 0 ) {
- return 1;
- }
- if ( std::errno != 0 ) {
- return 1;
- }
-# endif
-}
-#endif // _STLP_WCE