Since the C# using statement is just a syntactic sugar for try/finally{dispose}, why does it accept multiple objects only if they are of the same type?
Other variable declarations in C# only allow you to declare multiple variables of the same type in the same statement; I don't see why using headers should be different.