aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog6
-rw-r--r--gcc/cp/pt.c7
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/g++.dg/debug/static1.C16
4 files changed, 30 insertions, 4 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 8776b1f..410c88f 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,9 @@
+2005-11-02 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/24569
+ * pt.c (instantiate_decl): Use cp_finish_decl, not
+ finish_static_data_member_decl.
+
2005-10-28 Andrew Pinski <pinskia@physics.uc.edu>
* decl.c (grokfndecl): Remove the setting
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 62db122..ecfc6d1 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -11630,10 +11630,9 @@ instantiate_decl (tree d, int defer_ok,
init = tsubst_expr (DECL_INITIAL (code_pattern),
args,
tf_error | tf_warning, NULL_TREE);
- DECL_INITIAL (d) = NULL_TREE;
- finish_static_data_member_decl (d, init,
- /*asmspec_tree=*/NULL_TREE,
- LOOKUP_ONLYCONVERTING);
+ DECL_INITIAL (d) = init;
+ cp_finish_decl (d, init, /*asmspec_tree=*/NULL_TREE,
+ LOOKUP_ONLYCONVERTING);
pop_nested_class ();
pop_nested_namespace (ns);
}
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index fd31f90..04a3342 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2005-11-02 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/24569
+ * g++.dg/debug/static1.C: New test.
+
2005-11-02 Josh Conner <jconner@apple.com>
* g++.dg/crash38.C: moved into proper directory...
diff --git a/gcc/testsuite/g++.dg/debug/static1.C b/gcc/testsuite/g++.dg/debug/static1.C
new file mode 100644
index 0000000..7419ce5
--- /dev/null
+++ b/gcc/testsuite/g++.dg/debug/static1.C
@@ -0,0 +1,16 @@
+// PR c++/24569
+
+template <int dim>
+struct S
+{
+ static const int u = 2 * dim;
+ static const int p[u];
+ static int f();
+};
+
+template <>
+inline int S<3>::f () { return 1; }
+
+template <int dim> const int S<dim>::u;
+
+template class S<3>;