diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/ext/always_inline-1.C')
-rw-r--r-- | gcc/testsuite/g++.dg/ext/always_inline-1.C | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/ext/always_inline-1.C b/gcc/testsuite/g++.dg/ext/always_inline-1.C new file mode 100644 index 000000000..284fd17a0 --- /dev/null +++ b/gcc/testsuite/g++.dg/ext/always_inline-1.C @@ -0,0 +1,26 @@ +// { dg-options "-O0" } +// { dg-do compile } +// PR C++/34715 + + +namespace X +{ + template <class T> + const T& min(const T& a, const T& b); + + template <class T> + inline __attribute__ ((always_inline)) const T& min(const T& a, const T& b) + { + return a < b ? a : b; + } +} +template <class T> +inline __attribute__ ((always_inline)) T y(const T& a, const T& b) +{ + return X::min(a, b); +} +int main() +{ + int a = 0, b = 0; + return y(a, b); +} |