diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.pt/instantiate5.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.pt/instantiate5.C | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate5.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate5.C new file mode 100644 index 000000000..21d8b3347 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate5.C @@ -0,0 +1,13 @@ +// { dg-do link } +// { dg-additional-sources " instantiate5.cc instantiate5-main.cc" } + +// `global constructors' are given the same name, based on foo(), on +// both translation units, which is wrong, because it must be possible +// to define template functions in multiple translation units, as long +// as they're given the same definition + +// simplified from test case submitted by Daniel X. Pape <dpape@canis.uiuc.edu> + +template <class T> void foo() { } +inline int bar() { foo<void>(); return 1; } +static int i = bar(); |