------- Comment #10 from cppljevans at suddenlink dot net  2009-08-13 19:15 
-------
Created an attachment (id=18356)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18356&action=view)
minimal test case demonstrating bug

The comments at bottom show that wrong template instance is being
selected by cp_tree_equal.  For example, with:

  //#define INTEGRAL0_C

cp_tree_equal tries to select the integral_c<,Values> from struct package_c for
integral1_c<,Value_1>::type_1; however, since Value_1
is not a parameter pack, compiler gives confusing error message about
Values not being expanded, 

OTOH, with:

  #define INTEGRAL0_C

the compiler tries to use the type of integral0_c<,Value_0>::type_0
for the integral<,Values> in the supertype of package_c; however, since,
in this case, Value_0 is not a parameter pack, compiler gives error
about no contained argument packs.


-- 


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

Reply via email to