Commits
Jordan Rose committed 9d74d25e502
[ClangImporter] Replace one hack to deal with va_list for another. va_list on i386 and arm64 is a pointer. On armv7, it's a struct that /contains/ a pointer. But on x86_64, it's an array of one struct element, which means it decays to a pointer as an argument but not as a variable or struct field. This patch: - Looks for a decayed pointer argument that represents an x86_64 va_list. - Validates that the va_list on other platforms is at least pointer-sized. - Uses the decayed (pointer) type when getting the Clang type for CVaListPointer. - Drops the implicit conversion from CVaListPointer to COpaquePointer. All together, this provides more type-safety for functions using va_list on x86_64. Swift SVN r17307