> 3) Suppose you've got some relational operators and templates thrown in: > > a << b<c<3>> << c < d << e; Won't that treat the >> in b<c<3>> as the shift right operator and fail compilation? a << b<c<3> > << c < d << e? which higlights how bad the syntax is I think. At least thats the only meaning of the code that makes sense to me ;-)