Opened 12 years ago
Closed 12 years ago
#4777 closed Bugs (fixed)
tr1 random tests don't compile: private typedef in boost::random::discard_block
Reported by: | Owned by: | No-Maintainer | |
---|---|---|---|
Milestone: | Boost 1.45.0 | Component: | random |
Version: | Boost Development Trunk | Severity: | Regression |
Keywords: | result_type random compile error TR1 | Cc: |
Description
All the tr1 random tests fail to compile
error C2248: 'boost::random::discard_block<URNG,p,r>::result_type' : cannot access private typedef declared in class 'boost::random::discard_block<URNG,p,r>' ..\boost/random/discard_block.hpp(199) : see declaration of 'boost::random::discard_block<URNG,p,r>::result_type'
Doesn't seem like a compiler error: the typedef really is private in discard_block.hpp line 199.
The base class, discard_block_engine, has the typedef public, so it seems that discard_block should follow suit.
Affects 4 tests from these two places in the test code: ..\libs\tr1\test\test_random.cpp(151) ..\libs\tr1\test\run_random.cpp(21)
Change History (5)
comment:1 by , 12 years ago
Severity: | Showstopper → Regression |
---|
comment:2 by , 12 years ago
comment:3 by , 12 years ago
Ok - so I'm looking at the tr1 tests instead. ;-)
In the test matrix, http://www.boost.org/development/tests/release/developer/tr1.html the tests are failing for run_random and std_run_random, but they are run-time failures, not compile time errors.
For VC9, some of the tr1/random tests are marked as "expected failure".
More information, please.
comment:4 by , 12 years ago
Trunk: http://www.boost.org/development/tests/trunk/developer/tr1.html
Each row involving random: run_random, std_run_random, std_test_random, test_random
Each row fails to compile on > 50% of the platforms, citing private typedefs as above. E.g., MinGW-32.
comment:5 by , 12 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Just tried this on the trunk [66302], release branch [66302] and the 1.44 release. No errors here - Mac OS X 10.6.2, gcc 4.2.1
On the release test matrix, http://www.boost.org/development/tests/release/developer/random.html, I'm seeing two compilers (Pathscale and Qcc) having trouble, and all the rest are green.
I'm guessing, from the "C2248" error number, that this is Visual Studio - but what version, etc?