diff options
author | Jordan Rose <jordan_rose@apple.com> | 2013-01-30 18:16:06 +0000 |
---|---|---|
committer | Jordan Rose <jordan_rose@apple.com> | 2013-01-30 18:16:06 +0000 |
commit | 4cf4f8a5d482fa03c712cad493b39057ff93b6ab (patch) | |
tree | 110444ab61f12ec1eda94989e03825a450d70495 /libclc | |
parent | 2625cf06ffcd69a6b9ad072414e16671faa6ab80 (diff) | |
download | bcm5719-llvm-4cf4f8a5d482fa03c712cad493b39057ff93b6ab.tar.gz bcm5719-llvm-4cf4f8a5d482fa03c712cad493b39057ff93b6ab.zip |
[analyzer] Model trivial copy/move ctors with an aggregate bind.
This is faster for the analyzer to process than inlining the constructor
and performing a member-wise copy, and it also solves the problem of
warning when a partially-initialized POD struct is copied.
Before:
CGPoint p;
p.x = 0;
CGPoint p2 = p; <-- assigned value is garbage or undefined
After:
CGPoint p;
p.x = 0;
CGPoint p2 = p; // no-warning
This matches our behavior in C, where we don't see a field-by-field copy.
<rdar://problem/12305288>
llvm-svn: 173951
Diffstat (limited to 'libclc')
0 files changed, 0 insertions, 0 deletions