summaryrefslogtreecommitdiffstats
path: root/tests/ui/parser/deep-unmatched-angle-brackets.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/parser/deep-unmatched-angle-brackets.rs')
-rw-r--r--tests/ui/parser/deep-unmatched-angle-brackets.rs17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/ui/parser/deep-unmatched-angle-brackets.rs b/tests/ui/parser/deep-unmatched-angle-brackets.rs
new file mode 100644
index 000000000..f8d490e1c
--- /dev/null
+++ b/tests/ui/parser/deep-unmatched-angle-brackets.rs
@@ -0,0 +1,17 @@
+trait Mul<T> {
+ type Output;
+}
+trait Matrix: Mul<<Self as Matrix>::Row, Output = ()> {
+ type Row;
+ type Transpose: Matrix<Row = Self::Row>;
+}
+fn is_mul<S, T: Mul<S, Output = ()>>() {}
+fn f<T: Matrix>() {
+ is_mul::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<
+ f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<
+ f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<
+ f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::
+ <f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<f::<>();
+ //~^ ERROR expected one of `!`, `+`, `,`, `::`, or `>`, found `(`
+}
+fn main() {}