Bug 54675 - [4.8 Regression] Many libstdc++ testsuite failures in ext/random
Summary: [4.8 Regression] Many libstdc++ testsuite failures in ext/random
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: libstdc++ (show other bugs)
Version: 4.8.0
: P3 normal
Target Milestone: 4.8.0
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-09-23 09:14 UTC by Uroš Bizjak
Modified: 2012-09-23 18:12 UTC (History)
0 users

See Also:
Host:
Target: alphaev68-unknown-linux-gnu
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Uroš Bizjak 2012-09-23 09:14:06 UTC
Recent patch introduced many libstdc++ testsuite failures on alpha:

FAIL: ext/random/beta_distribution/cons/default.cc (test for excess errors)
UNRESOLVED: ext/random/beta_distribution/cons/default.cc compilation failed to produce executable
FAIL: ext/random/beta_distribution/cons/parms.cc (test for excess errors)
UNRESOLVED: ext/random/beta_distribution/cons/parms.cc compilation failed to produce executable
FAIL: ext/random/beta_distribution/operators/equal.cc (test for excess errors)
UNRESOLVED: ext/random/beta_distribution/operators/equal.cc compilation failed to produce executable
FAIL: ext/random/beta_distribution/operators/inequal.cc (test for excess errors)
UNRESOLVED: ext/random/beta_distribution/operators/inequal.cc compilation failed to produce executable
FAIL: ext/random/beta_distribution/operators/serialize.cc (test for excess errors)
UNRESOLVED: ext/random/beta_distribution/operators/serialize.cc compilation failed to produce executable
FAIL: ext/random/beta_distribution/requirements/explicit_instantiation/1.cc (test for excess errors)
FAIL: ext/random/beta_distribution/requirements/typedefs.cc (test for excess errors)
FAIL: ext/random/nakagami_distribution/cons/default.cc (test for excess errors)
UNRESOLVED: ext/random/nakagami_distribution/cons/default.cc compilation failed to produce executable
FAIL: ext/random/nakagami_distribution/cons/parms.cc (test for excess errors)
UNRESOLVED: ext/random/nakagami_distribution/cons/parms.cc compilation failed to produce executable
FAIL: ext/random/nakagami_distribution/operators/equal.cc (test for excess errors)
UNRESOLVED: ext/random/nakagami_distribution/operators/equal.cc compilation failed to produce executable
FAIL: ext/random/nakagami_distribution/operators/inequal.cc (test for excess errors)
UNRESOLVED: ext/random/nakagami_distribution/operators/inequal.cc compilation failed to produce executable
FAIL: ext/random/nakagami_distribution/operators/serialize.cc (test for excess errors)
UNRESOLVED: ext/random/nakagami_distribution/operators/serialize.cc compilation failed to produce executable
FAIL: ext/random/nakagami_distribution/requirements/explicit_instantiation/1.cc (test for excess errors)
FAIL: ext/random/nakagami_distribution/requirements/typedefs.cc (test for excess errors)
FAIL: ext/random/normal_mv_distribution/cons/default.cc (test for excess errors)
UNRESOLVED: ext/random/normal_mv_distribution/cons/default.cc compilation failed to produce executable
FAIL: ext/random/normal_mv_distribution/cons/parms.cc (test for excess errors)
UNRESOLVED: ext/random/normal_mv_distribution/cons/parms.cc compilation failed to produce executable
FAIL: ext/random/normal_mv_distribution/operators/equal.cc (test for excess errors)
UNRESOLVED: ext/random/normal_mv_distribution/operators/equal.cc compilation failed to produce executable
FAIL: ext/random/normal_mv_distribution/operators/inequal.cc (test for excess errors)
UNRESOLVED: ext/random/normal_mv_distribution/operators/inequal.cc compilation failed to produce executable
FAIL: ext/random/normal_mv_distribution/operators/serialize.cc (test for excess errors)
UNRESOLVED: ext/random/normal_mv_distribution/operators/serialize.cc compilation failed to produce executable
FAIL: ext/random/normal_mv_distribution/requirements/explicit_instantiation/1.cc (test for excess errors)
FAIL: ext/random/normal_mv_distribution/requirements/typedefs.cc (test for excess errors)
FAIL: ext/random/pareto_distribution/cons/default.cc (test for excess errors)
UNRESOLVED: ext/random/pareto_distribution/cons/default.cc compilation failed to produce executable
FAIL: ext/random/pareto_distribution/cons/parms.cc (test for excess errors)
UNRESOLVED: ext/random/pareto_distribution/cons/parms.cc compilation failed to produce executable
FAIL: ext/random/pareto_distribution/operators/equal.cc (test for excess errors)
UNRESOLVED: ext/random/pareto_distribution/operators/equal.cc compilation failed to produce executable
FAIL: ext/random/pareto_distribution/operators/inequal.cc (test for excess errors)
UNRESOLVED: ext/random/pareto_distribution/operators/inequal.cc compilation failed to produce executable
FAIL: ext/random/pareto_distribution/operators/serialize.cc (test for excess errors)
UNRESOLVED: ext/random/pareto_distribution/operators/serialize.cc compilation failed to produce executable
FAIL: ext/random/pareto_distribution/requirements/explicit_instantiation/1.cc (test for excess errors)
FAIL: ext/random/pareto_distribution/requirements/typedefs.cc (test for excess errors)
FAIL: ext/random/rice_distribution/cons/default.cc (test for excess errors)
UNRESOLVED: ext/random/rice_distribution/cons/default.cc compilation failed to produce executable
FAIL: ext/random/rice_distribution/cons/parms.cc (test for excess errors)
UNRESOLVED: ext/random/rice_distribution/cons/parms.cc compilation failed to produce executable
FAIL: ext/random/rice_distribution/operators/equal.cc (test for excess errors)
UNRESOLVED: ext/random/rice_distribution/operators/equal.cc compilation failed to produce executable
FAIL: ext/random/rice_distribution/operators/inequal.cc (test for excess errors)
UNRESOLVED: ext/random/rice_distribution/operators/inequal.cc compilation failed to produce executable
FAIL: ext/random/rice_distribution/operators/serialize.cc (test for excess errors)
UNRESOLVED: ext/random/rice_distribution/operators/serialize.cc compilation failed to produce executable
FAIL: ext/random/rice_distribution/requirements/explicit_instantiation/1.cc (test for excess errors)
FAIL: ext/random/rice_distribution/requirements/typedefs.cc (test for excess errors)
FAIL: ext/random/simd_fast_mersenne_twister_engine/cons/copy.cc (test for excess errors)
UNRESOLVED: ext/random/simd_fast_mersenne_twister_engine/cons/copy.cc compilation failed to produce executable
FAIL: ext/random/simd_fast_mersenne_twister_engine/cons/default.cc (test for excess errors)
UNRESOLVED: ext/random/simd_fast_mersenne_twister_engine/cons/default.cc compilation failed to produce executable
FAIL: ext/random/simd_fast_mersenne_twister_engine/cons/seed1.cc (test for excess errors)
UNRESOLVED: ext/random/simd_fast_mersenne_twister_engine/cons/seed1.cc compilation failed to produce executable
FAIL: ext/random/simd_fast_mersenne_twister_engine/cons/seed2.cc (test for excess errors)
UNRESOLVED: ext/random/simd_fast_mersenne_twister_engine/cons/seed2.cc compilation failed to produce executable
FAIL: ext/random/simd_fast_mersenne_twister_engine/cons/seed_seq.cc (test for excess errors)
UNRESOLVED: ext/random/simd_fast_mersenne_twister_engine/cons/seed_seq.cc compilation failed to produce executable
FAIL: ext/random/simd_fast_mersenne_twister_engine/operators/equal.cc (test for excess errors)
UNRESOLVED: ext/random/simd_fast_mersenne_twister_engine/operators/equal.cc compilation failed to produce executable
FAIL: ext/random/simd_fast_mersenne_twister_engine/operators/inequal.cc (test for excess errors)
UNRESOLVED: ext/random/simd_fast_mersenne_twister_engine/operators/inequal.cc compilation failed to produce executable
FAIL: ext/random/simd_fast_mersenne_twister_engine/operators/serialize.cc (test for excess errors)
UNRESOLVED: ext/random/simd_fast_mersenne_twister_engine/operators/serialize.cc compilation failed to produce executable

These errors are all similar:

/home/uros/gcc-build/./gcc/g++ -shared-libgcc -B/home/uros/gcc-build/./gcc -nostdinc++ -L/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/src -L/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/src/.libs -B/usr/local/alphaev68-unknown-linux-gnu/bin/ -B/usr/local/alphaev68-unknown-linux-gnu/lib/ -isystem /usr/local/alphaev68-unknown-linux-gnu/include -isystem /usr/local/alphaev68-unknown-linux-gnu/sys-include -B/home/uros/gcc-build/alphaev68-unknown-linux-gnu/./libstdc++-v3/src/.libs -D_GLIBCXX_ASSERT -fmessage-length=0 -ffunction-sections -fdata-sections -g -O2 -D_GNU_SOURCE -mieee -g -O2 -D_GNU_SOURCE -mieee -DLOCALEDIR="." -nostdinc++ -I/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/alphaev68-unknown-linux-gnu -I/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include -I/home/uros/gcc-svn/trunk/libstdc++-v3/libsupc++ -I/home/uros/gcc-svn/trunk/libstdc++-v3/include/backward -I/home/uros/gcc-svn/trunk/libstdc++-v3/testsuite/util /home/uros/gcc-svn/trunk/libstdc++-v3/testsuite/ext/random/beta_distribution/cons/default.cc -std=c++0x ./libtestc++.a -Wl,--gc-sections -lm -o ./default.exe^M
/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random:1402:25: error: expected ',' or '...' before numeric constant^M
  param_type(result_type __alpha = result_type(1),^M
                         ^^M
/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random:1433:39: error: expected ',' or '...' before numeric constant^M
       pareto_distribution(result_type __alpha = result_type(1),^M
                                       ^^M
In file included from /home/uros/gcc-svn/trunk/libstdc++-v3/testsuite/ext/random/beta_distribution/cons/default.cc:24:0:^M
/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random: In constructor '__gnu_cxx::pareto_distribution<_RealType>::param_type::param_type(__gnu_cxx::pareto_distribution<_RealType>::result_type)':^M
/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random:1404:29: error: '__mu' was not declared in this scope^M
  : _M_alpha(__alpha), _M_mu(__mu)^M
                             ^^M
/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random: In constructor '__gnu_cxx::pareto_distribution<_RealType>::pareto_distribution(__gnu_cxx::pareto_distribution<_RealType>::result_type)':^M
/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random:1435:27: error: '__mu' was not declared in this scope^M
       : _M_param(__alpha, __mu),^M
                           ^^M
/space/uros/gcc-svn/trunk/libstdc++-v3/include/ext/random.tcc: In function 'std::basic_istream<_CharT, _Traits>& __gnu_cxx::operator>>(std::basic_istream<_CharT, _Traits>&, __gnu_cxx::pareto_distribution<_RealType>&)':^M
/space/uros/gcc-svn/trunk/libstdc++-v3/include/ext/random.tcc:905:17: error: expected unqualified-id before numeric constant^M
       _RealType __alpha, __mu;^M
                 ^^M
In file included from /home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random:1603:0,^M
                 from /home/uros/gcc-svn/trunk/libstdc++-v3/testsuite/ext/random/beta_distribution/cons/default.cc:24:^M
/space/uros/gcc-svn/trunk/libstdc++-v3/include/ext/random.tcc:906:26: error: '__mu' was not declared in this scope^M
       __is >> __alpha >> __mu;^M
                          ^^M
compiler exited with status 1

FAIL: ext/random/beta_distribution/cons/default.cc (test for excess errors)
Excess errors:
/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random:1402:25: error: expected ',' or '...' before numeric constant
/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random:1433:39: error: expected ',' or '...' before numeric constant
/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random:1404:29: error: '__mu' was not declared in this scope
/home/uros/gcc-build/alphaev68-unknown-linux-gnu/libstdc++-v3/include/ext/random:1435:27: error: '__mu' was not declared in this scope
/space/uros/gcc-svn/trunk/libstdc++-v3/include/ext/random.tcc:905:17: error: expected unqualified-id before numeric constant
/space/uros/gcc-svn/trunk/libstdc++-v3/include/ext/random.tcc:906:26: error: '__mu' was not declared in this scope
Comment 1 Uroš Bizjak 2012-09-23 09:23:49 UTC
I have a patch. __alpha badname should be avoided.
Comment 2 Paolo Carlini 2012-09-23 10:04:52 UTC
Indeed patch pre-approved. Normally we use __alpha_val in such cases.
Comment 3 uros 2012-09-23 11:24:53 UTC
Author: uros
Date: Sun Sep 23 11:24:46 2012
New Revision: 191650

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=191650
Log:
	PR libstdc++/54675
	* include/ext/random: Avoid the badname __alpha (and, for
	consistency, __mu, __nu, __sigma and __omega too).
	* include/bits/random.tcc: Likewise.


Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/ext/random
    trunk/libstdc++-v3/include/ext/random.tcc
Comment 4 Paolo Carlini 2012-09-23 18:12:39 UTC
Fixed.