davide added a comment. Richard, can you please take a look at this? The more I look at it the more it seems weird that we can recurse in this case, but I may miss something https://reviews.llvm.org/D20748