It doesn't have to be (as awesome) like C++ templates, you missed the point, C++ templates are unconstrained, the concepts work is trying to improve that, read the concepts paper.
@Ion Todirel: It's not about providing source code, it's about consuming source code. We generally don't do that in C#. If that is what you want, we already have it, and it's far more powerful than C++ templates. http://msdn.microsoft.com/en-us/library/bb126445.aspx
Generics aren't templates, and C++ style templates are unlikely to ever be added (they aren't needed). If you're used to C++ then I understand the confusion, but really, there's no reason to want C++ style templates in C#.
That said, like I've already admitted here, it would be nice for the constraints to be expanded a bit. In particular, operator support and Enum support would be nice. Not necessary, but nice.
T4 is more like the C preprocessor than anything