summaryrefslogtreecommitdiff
path: root/gcc/testsuite/obj-c++.dg/template-6.mm
blob: c9b82c0c7abbc845af19b4e686c73c69bd1b3d56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Test that extern template does not get emitted.
// Author: Matt Austern <austern@apple.com>

// { dg-do compile }
// { dg-options "" }
// { dg-final { scan-assembler-not ".globl __ZN3FooIiE5identEi" } }

template <typename X>
  struct Foo { X ident(X x); };

template <typename X> 
  X Foo<X>::ident(X x) { return x; }

extern template struct Foo<int>;

int abcde(Foo<int>& foo, int n) { return foo.ident(n); }