Elide all artificial copy constructors, because
authorSean Callanan <scallanan@apple.com>
Sat, 30 Mar 2013 03:06:45 +0000 (03:06 +0000)
committerSean Callanan <scallanan@apple.com>
Sat, 30 Mar 2013 03:06:45 +0000 (03:06 +0000)
commit6447c475411adf29250a8ce903ffc3335da40d0b
tree210e514284e962aa9f614d71cdf42dbf7ad02d63
parente55bc8a9c15bdac648c8ae73daa464818d16950f
Elide all artificial copy constructors, because
they are probably trivial.  This means that we
don't confuse Clang about whether a class is
trivially copy constructible.  It can figure
that out itself as long as we don't explicitly
feed it the constructors.

If the class is trivially copy-constructible,
this can change the ABI that Clang uses to call
functions that return that class (e.g., by making
the object be returned in a register), so this
is quite important for correctness.

<rdar://problem/13457741>

llvm-svn: 178411
lldb/source/Symbol/ClangASTContext.cpp