We've been using TcmUploadAssembly to update the C# TBBs in a Tridion 2013 installation, and have recently come across:
Error: Cannot generate template with name Correct Self Closing Elements,
since a non-generated template is already present.
In our case "Correct Self Closing Elements" is the name of a C# class. It is contained in an assembly that had previously been uploaded and was working correctly. At this point the C# project compiles properly, the assembly is included as a TBB, and the class is included as a TBB that references the assembly.