llvm-project/clang/test
Douglas Gregor 7c38f153ac Rework our handling of binding a reference to a temporary
subobject. Previously, we could only properly bind to a base class
subobject while extending the lifetime of the complete object (of a
derived type); for non-static data member subobjects, we could memcpy
(!) the result and bind to that, which is rather broken.

Now, we pull apart the expression that we're binding to, to figure out
which subobject we're accessing, then construct the temporary object
(adding a destruction if needed) and, finally, dig out the subobject
we actually meant to access.

This fixes yet another instance where we were memcpy'ing rather than
doing the right thing. However, note the FIXME in references.cpp:
there's more work to be done for binding to subobjects, since the AST
is incorrectly modeling some member accesses in base classes as
lvalues when they are really rvalues.

llvm-svn: 104219
2010-05-20 08:36:28 +00:00
..
ASTMerge Instead of counting totally diagnostics, split the count into a count 2010-04-07 18:47:42 +00:00
Analysis Don't add a null successor to a CFGBlock when the contents of an @synchronized statement is empty. 2010-05-13 16:38:08 +00:00
CXX Revert r104117, "Provide a naming class for UnresolvedLookupExprs, even when 2010-05-19 21:07:14 +00:00
CodeCompletion when code completing inside a C-style block comment, don't emit errors about 2010-05-16 19:54:05 +00:00
CodeGen Implement codegen for __builtin_isnormal. 2010-05-19 11:24:26 +00:00
CodeGenCXX Rework our handling of binding a reference to a temporary 2010-05-20 08:36:28 +00:00
CodeGenObjC More tests for ObjC++ GC support. 2010-05-19 23:07:54 +00:00
CodeGenObjCXX Various small fixes for construction/destruction of Objective-C++ 2010-05-20 02:24:22 +00:00
Coverage "this patch properly addresses escaping < and > which might appear 2010-05-12 23:27:11 +00:00
Driver Force -no-integrated-as in this test. 2010-05-14 02:02:13 +00:00
FixIt Fix typo test case 2010-05-18 16:57:36 +00:00
Frontend Fix PR5982, a refacto in checking for '=' in a -D argument. 2010-01-10 00:46:21 +00:00
Headers Make sure we don't include mm_malloc.h in this test, it includes errno.h which 2010-03-26 20:17:23 +00:00
Index Add clang support for IBOutletCollection. 2010-05-19 17:38:06 +00:00
Lexer robustify the conflict marker stuff. Don't add 7 twice, which would 2010-05-17 20:27:25 +00:00
Misc Testcase for r103712. 2010-05-13 12:04:17 +00:00
PCH pch'ify CXXNewExpr and CXXZeroInitValueExpr 2010-05-10 01:22:27 +00:00
Parser Patch to fix a crash on incomplete class declaration. 2010-05-14 21:35:02 +00:00
Preprocessor Fix pasto in this test 2010-04-30 03:07:23 +00:00
Rewriter make the rewriter add a #ifndef around the #define of __attribute__. 2010-04-13 17:33:56 +00:00
Sema If a switch condition is constant, don't warn about missing enum cases. 2010-05-18 03:19:21 +00:00
SemaCXX Remove accidental commit 2010-05-20 02:26:51 +00:00
SemaObjC Misc. fixes to bring Objetive-C++'s handling of 2010-05-18 23:04:17 +00:00
SemaObjCXX Various small fixes for construction/destruction of Objective-C++ 2010-05-20 02:24:22 +00:00
SemaTemplate Revert r104106; it's breaking linking of Boost.Serialization. 2010-05-19 17:02:24 +00:00
CMakeLists.txt Add test cases for r98003 and r98006. 2010-03-08 23:38:27 +00:00
Makefile sigh 2010-05-15 16:56:34 +00:00
TestRunner.sh Switch TestRunner.sh to just use 'lit'. 2009-09-20 22:00:23 +00:00
cxx-sections.data Update C++ section data and directory structure to reflect N2914 2009-06-30 16:45:27 +00:00
lit.cfg tests: Mangle '-vg' onto the end of the triple when running under valgrind, so 2010-03-20 21:13:08 +00:00
lit.site.cfg.in Rework site config for cmake to be generated at configure time, and only pass 2009-11-07 23:53:32 +00:00
make_test_dirs.pl Add the structure for a C++ test suite that mimics the structure of the C++ standard 2009-06-13 06:06:53 +00:00