ispc/ispc — pull request #420 by jbrodman (2013-01-08 19:54:48+00:00)
Title: Fix for c++ backend

The representation of SwitchInsts changed in LLVM >= 3.2 to use the new range objects. This causes issues when iterating through the operands of a SwitchInst cast as a User. The C++ was thus generating spurious type array type declarations when an ISPC program uses the print function of the standard library. For now, just punt if the search for ArrayTypes finds a SwitchInst. There is probably a cleaner way to fix this in the future.