summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2013-06-27 02:35:52 +0000
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2013-06-27 02:35:52 +0000
commitdd2f8b8cc6e4bfcf12a484c55e5d289e9c218862 (patch)
treece44c3421249f96f428cdb80bf7fbdd2e1f983e2 /gcc
parentcd50b62d3e06b1db236a4bb6e00752a5b7a7b30a (diff)
downloadgcc-dd2f8b8cc6e4bfcf12a484c55e5d289e9c218862.tar.gz
DR 1589
* g++.dg/cpp0x/initlist72.C: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200451 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist72.C22
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist72.C b/gcc/testsuite/g++.dg/cpp0x/initlist72.C
new file mode 100644
index 00000000000..98fc79f1d17
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist72.C
@@ -0,0 +1,22 @@
+// DR 1589
+// { dg-require-effective-target c++11 }
+
+#include <initializer_list>
+
+struct Pair
+{
+ Pair(const char *, const char *);
+};
+
+struct String
+{
+ String(const char *);
+};
+
+void f1(int); // #1
+int f1(std::initializer_list<long>); // #2
+int g1() { return f1({42}); } // chooses #2
+
+void f2(Pair); // #3
+int f2(std::initializer_list<String>); // #4
+int g2() { return f2({"foo","bar"}); } // chooses #4