summaryrefslogtreecommitdiffstats
path: root/tests/ui/generics/generic-impl-less-params-with-defaults.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/generics/generic-impl-less-params-with-defaults.rs')
-rw-r--r--tests/ui/generics/generic-impl-less-params-with-defaults.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/ui/generics/generic-impl-less-params-with-defaults.rs b/tests/ui/generics/generic-impl-less-params-with-defaults.rs
new file mode 100644
index 000000000..66afbb58a
--- /dev/null
+++ b/tests/ui/generics/generic-impl-less-params-with-defaults.rs
@@ -0,0 +1,13 @@
+use std::marker;
+
+struct Foo<A, B, C = (A, B)>(
+ marker::PhantomData<(A,B,C)>);
+
+impl<A, B, C> Foo<A, B, C> {
+ fn new() -> Foo<A, B, C> {Foo(marker::PhantomData)}
+}
+
+fn main() {
+ Foo::<isize>::new();
+ //~^ ERROR this struct takes at least 2 generic arguments but 1 generic argument
+}