[Bug c++/51852] [regression] [c++11] tree check: expected tree_list, have HßèMÕþÿøtxøtsø

zeratul976 at hotmail dot com gcc-bugzilla@gcc.gnu.org
Fri Jan 27 09:02:00 GMT 2012


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51852

--- Comment #17 from Nathan Ridge <zeratul976 at hotmail dot com> 2012-01-27 07:30:00 UTC ---
(In reply to comment #16)
> make check-g++-strict-gc finds failures on several variadic template tests,
> including variadic99.C, so I don't think reducing your testcase is necessary.

Already reduced it :) 
It was quite straightforward after using --param gcc-min-heapsize=0 - thanks
Andrew!


Testcase:

template <typename, typename>
class transformed {};

template <class R, class F>
transformed<F, R> transform(R r, F f);

template <typename, typename>
class joined {};

template <typename T, typename U>
joined<T, U> join(T t, U u);  

template <typename T, typename U, typename V, typename... Rest>
auto join(T t, U u, V v, Rest... rest) -> decltype(join(join(t, u), v,
rest...));  

template <typename F, typename... Rs>
auto polymorphic_transform(F f, Rs... rs) -> decltype(join((transform(rs,
f))...));

int main()
{
    polymorphic_transform(0, 0, 0);                                   
}


Compile with:

g++ -c --std=c++0x --param ggc-min-heapsize=0 test.cpp


Output:

'
tree check: expected tree_list, have Hßfè÷þÿø
ÐÝÿÿ¸l in eq_local_specializations, at cp/pt.c:1687



More information about the Gcc-bugs mailing list