Version Used: VS 17.8.2
Steps to Reproduce:
public class C {
public void M<T1, T2>() {
M<, T2>();
G<, T2> x;
}
}
public class G<T1, T2>;
SharpLab repro
Expected Behavior:
The type argument list is parsed correctly, with the first type argument being reported as missing (with an appropriate error diagnostic, possibly CS1031 "Type expected"?).
Actual Behavior:
The angled brackets cause the expressions to be parsed as greater than/less than expressions, which leads to an unexpected syntax tree with lots of misleading diagnostics.
(The trees of both expressions look quite similar to that from #67277.)
