I think the basic premise makes sense, but I want Daniel to take a look, as the Type matching is quite complex and we often ran into unforeseen corner cases... I'm not sure yet what exactly the right fix is. http://llvm-reviews.chandlerc.com/D770