llvm-project/clang/test
Nico Weber 7123bca7fb Fix debug info for Objective-C properties from class extensions after r251874
After r251874, properties from class extensions no longer show up in
ObjCInterfaceDecl::properties().  Make debug info emission explicitly
look for properties in class extensions before looking at direct properties.

Also add a test that checks for this.  There are three interesting cases:

1. A property is only declared in a class extension, and the @implementation
   is in a different file.  This used to generated a DIObjcProperty before
   r251874 and does again with this fix.

2. A property is declared as readonly in the class itself and redeclared as
   readwrite in a class extension. clang before r251874 put the DIObjcProperty
   on the first declaration. clang after r251874 didn't emit any DIObjcProperty,
   and clang with this fix puts it on the readwrite redeclaration (which is
   what lookup finds).  This seems like a progression.

3. Like 2, but with an @implementation in the same file.  In this case,
   the property debug info gets generated a second time through the ivar
   from the definition.  In this case, lookup and declaration code need
   to agree on the line number so that the DIObjcProperty isn't emitted
   twice.  In this case, clang before r251874 emitted one DIObjcProperty
   on the first declaration, clang with r251874 emitted one on the second
   declaration, and clang with this patch still does the latter.

llvm-svn: 254750
2015-12-04 19:14:14 +00:00
..
ARCMT Define weak and __weak to mean ARC-style weak references, even in MRC. 2015-10-22 18:38:17 +00:00
ASTMerge Update tests touched by r249656 2015-10-08 06:31:22 +00:00
Analysis [analyzer] Improve modelling of nullptr_t in the analyzer. Fix PR25414. 2015-12-04 15:02:30 +00:00
CXX PR25731: namespace alias declarations can appear at block scope; ensure that we 2015-12-03 23:24:04 +00:00
CodeCompletion [Tests] Modified Lit Tests to be C++11 compatibile 2015-08-27 18:49:15 +00:00
CodeGen LLDB JIT needs android vector passing rules. 2015-12-04 01:39:30 +00:00
CodeGenCUDA Allow linking multiple bitcode files. 2015-10-27 17:56:59 +00:00
CodeGenCXX Add tests for pass_object_size. 2015-12-03 19:19:09 +00:00
CodeGenObjC Fix debug info for Objective-C properties from class extensions after r251874 2015-12-04 19:14:14 +00:00
CodeGenObjCXX Revert "Change memcpy/memset/memmove to have dest and source alignments." 2015-11-19 05:55:59 +00:00
CodeGenOpenCL [OpenCL 2.0] Apply default address space (AS). 2015-11-23 11:14:44 +00:00
Coverage Stop messing with the 'g' group of options in CompilerInvocation. 2015-10-08 04:24:12 +00:00
CoverageMapping InstrProf: Fix a misuse of the FunctionDecl API when generating coverage 2015-07-28 00:41:51 +00:00
Driver [PS4] Add an additional test for ASan+UBSan 2015-12-04 16:18:03 +00:00
FixIt [Lit Test] Updated 26 Lit tests to be C++11 compatible. 2015-11-11 19:34:47 +00:00
Format Fix clang-format test. I believe that the new behavior is better. 2015-11-23 08:50:52 +00:00
Frontend Preprocessor: define correct tvOS and watchOS version macros 2015-10-30 16:30:30 +00:00
Headers Make ms-intrin.cpp test require the x86 target. 2015-09-23 00:24:34 +00:00
Index Make clang_Cursor_getMangling not mangle if the declaration isn't mangled 2015-11-23 19:56:46 +00:00
Integration
Layout [MS] Fix for bug 25013 - #pragma vtordisp is unknown inside functions, by Denis Zobnin. 2015-11-20 07:02:57 +00:00
Lexer [coroutines] Add forgotten test for lexing coroutines keywords. 2015-10-22 05:21:12 +00:00
Misc Do not crash when dumping the objc_bridge_related attribute when its optional arguments are not supplied. 2015-11-30 15:25:34 +00:00
Modules [modules] Don't reject multiple modules providing contents for the same embedded file. 2015-12-01 03:32:49 +00:00
OpenMP [OPENMP 4.5] Parsing/sema support for 'omp taskloop simd' directive. 2015-12-03 09:40:15 +00:00
PCH PR17381: Treat undefined behavior during expression evaluation as an unmodeled 2015-12-03 01:36:22 +00:00
Parser [coroutines] Factor out co_await representation into common base class for co_await and co_yield, and use it to hold await_* calls. 2015-11-22 02:57:17 +00:00
Preprocessor Teaches clang about Cortex-A35. 2015-12-02 12:03:42 +00:00
Profile [PGO] Test update for revision 253484. 2015-11-18 18:15:55 +00:00
Rewriter Stop messing with the 'g' group of options in CompilerInvocation. 2015-10-08 04:24:12 +00:00
Sema Add tests for `&enable_if_function` diagnostics. 2015-12-03 20:54:58 +00:00
SemaCUDA Produce a better diagnostic for global register variables. 2015-11-18 00:15:28 +00:00
SemaCXX Don't assert if evaluation of an expression that we're syntactically required 2015-12-04 03:00:44 +00:00
SemaObjC Don't actually add the __unsafe_unretained qualifier in MRC; 2015-11-19 02:28:03 +00:00
SemaObjCXX [Lit Test] Updated 26 Lit tests to be C++11 compatible. 2015-11-11 19:34:47 +00:00
SemaOpenCL [OpenCL 2.0] Apply default address space (AS). 2015-11-23 11:14:44 +00:00
SemaTemplate [Lit Test] Updated 34 Lit tests to be C++11 compatible. 2015-11-17 20:25:05 +00:00
TableGen
Tooling int function without a return statement is invalid C++. 2015-11-27 18:10:49 +00:00
Unit
VFS Stop messing with the 'g' group of options in CompilerInvocation. 2015-10-08 04:24:12 +00:00
.clang-format
CMakeLists.txt Make check-clang depend on LTO. 2015-12-03 15:40:23 +00:00
Makefile
TestRunner.sh
cxx-sections.data
lit.cfg Revert r247977, "clang/test/lit.cfg: *-ps4 doesn't have appropriate driver yet. Mark it as "non-clang-driver"." 2015-10-20 22:36:16 +00:00
lit.site.cfg.in
make_test_dirs.pl