Stop LoopConvert removing DeclStmts from selection/iteration condition clauses

If the LoopConvert Transform detects an alias for the loop variable, it
attempts to use that name in the resulting range-based for loop while removing
the original DeclStmt for the variable. That removal produced bad code when the
declaration was in the condition of an if, switch, while, or for stmt. This
revision fixes the problem by simply replacing the declaration with a use of
the alias variable.



git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@181242 91177308-0d34-0410-b5e6-96231b3b80d8
3 files changed