The commit is reverted as this was not a regression.
It's rather going to be stagged for 4.6.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@155976
138bc75d-0d04-0410-961f-
82ee72b054a4
2010-01-17 Dodji Seketeli <dodji@redhat.com>
PR c++/42697
+ *pt.c (tsubst_decl): Revert commit for PR c++/42697.
+
+2010-01-17 Dodji Seketeli <dodji@redhat.com>
+
+ PR c++/42697
*pt.c (tsubst_decl): Get the arguments of a specialization from
the specialization template, not from the most general template.
specialize R. */
gen_tmpl = most_general_template (DECL_TI_TEMPLATE (t));
argvec = tsubst_template_args (DECL_TI_ARGS
- (DECL_TEMPLATE_RESULT
- (DECL_TI_TEMPLATE (t))),
+ (DECL_TEMPLATE_RESULT (gen_tmpl)),
args, complain, in_decl);
/* Check to see if we already have this specialization. */
2010-01-17 Dodji Seketeli <dodji@redhat.com>
PR c++/42697
- * g++.dg/template/crash94.C: New test.
+ * g++.dg/template/crash94.C: Reverted.
+
+2010-01-17 Dodji Seketeli <dodji@redhat.com>
+
+ PR c++/42697
2010-01-17 Jie Zhang <jie.zhang@analog.com>
+++ /dev/null
-// Origin: PR c++/42697
-// { dg-do compile }
-
-template<class Value_t>
-class fparser
-{
- template<bool Option>
- void eval2(Value_t r[2]);
-public:
- void evaltest();
-};
-
-template<>
-template<bool Option>
-void fparser<int>::eval2(int r[2])
-{
- struct ObjType {};
-}
-
-
-template<class Value_t>
-void fparser<Value_t>::evaltest
- ()
-{
- eval2<false>(0);
-}
-
-template class fparser<int>;