| // Test that we don't emit unneeded copies of static data member template |
| // instantiations. |
| |
| // Disable debug info so we don't get confused by the symbol name there. |
| // The test fails on hppa*-*-hpux* because the symbol _ZN1AIiE1tE is imported. |
| // { dg-options "-g0" } |
| // { dg-final { if { [istarget hppa*-*-hpux*] } { return } } } |
| // { dg-final { scan-assembler-not "_ZN1AIiE1tE" } } |
| |
| template <class T> struct A { |
| static const T t = 0; |
| }; |
| |
| template <class T> const T A<T>::t; |
| |
| int i; |
| int main () |
| { |
| i = A<int>::t; // Should just use the value |
| } |