When isIncrementalProcessingEnabled is on we might call multiple times HandleEndOfTranslationUnit. This would complete the llvm::Module CodeGen is writing to.
This patch allows the clients to start a new llvm::Module, allowing CodeGen to continue writing.
This should give the necessary facilities to write a unittest for D34059.
Why does this one take a const std::string & instead of a StringRef?