diff options
author | Daniel Dunbar <daniel@zuster.org> | 2008-08-26 00:41:39 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2008-08-26 00:41:39 +0000 |
commit | 40bf7fe20e061250692770e41c6470326af8f26c (patch) | |
tree | 92d033ea40d88d82319699d3dc7189b4d6600944 /llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp | |
parent | 8dd01ccdd832d05adb8877ffdc50bc128745fd07 (diff) | |
download | bcm5719-llvm-40bf7fe20e061250692770e41c6470326af8f26c.tar.gz bcm5719-llvm-40bf7fe20e061250692770e41c6470326af8f26c.zip |
In incompatible pointer-typed ?: expressions, add implicit conversion
of RHSs to id type instead of void* if either has Objective-C object
type.
- This ensures the result can still be used in normal places an
object can be used, like a message send.
Add implicit conversions for ?: applied to qualified id types to
ensure that the RHSs are compatible.
- This prevents a codegen crash (creating invalid PHI nodes).
- Again, this relates to the fact that qualified id types have no
canonical types.
- Note that the implicit type casted to is incorrect, however this
doesn't currently cause problems because of the flexibility of the
id type.
Test cases for above.
llvm-svn: 55346
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp')
0 files changed, 0 insertions, 0 deletions