]> granicus.if.org Git - clang/commit
[CodeGen][ObjC] Fix assertion failure in EmitARCStoreStrongCall.
authorAkira Hatanaka <ahatanaka@apple.com>
Thu, 1 Jun 2017 18:41:25 +0000 (18:41 +0000)
committerAkira Hatanaka <ahatanaka@apple.com>
Thu, 1 Jun 2017 18:41:25 +0000 (18:41 +0000)
commitda3da60ded94f0ac960e711e96d96abdb7465a1f
tree33922a9ec9e9579bf30476f25fe706a4f37a9a29
parent42ee2c4bdf7c217c5d1849ebdf2194fab7bec450
[CodeGen][ObjC] Fix assertion failure in EmitARCStoreStrongCall.

The assertion fails because EmitValueForIvarAtOffset doesn't get the
correct type of the ivar when the class the ivar belongs to is
parameterized. This commit fixes the function to compute the ivar's type
based on the type argument provided to the parameterized class.

rdar://problem/32461723

Differential Revision: https://reviews.llvm.org/D33698

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@304449 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CGObjCRuntime.cpp
test/CodeGenObjC/parameterized_classes.m