I added Argyrios Kyrtzidis to the review since he has done some work on clang's file handling. He probably has an opinion on how to fix the virtual interface. http://reviews.llvm.org/D3686