summaryrefslogtreecommitdiffstats
path: root/clang/test
Commit message (Collapse)AuthorAgeFilesLines
* clang/test/CodeGen/2008-01-25-ZeroSizedAggregate.c: [PR8833] Add REQUIRES: ↵NAKAMURA Takumi2012-09-121-0/+1
| | | | | | LP64. It fails with +Asserts for Win64. llvm-svn: 163708
* clang/test/CodeGenObjC: [PR13820] Suppress LLP64-incompatible tests.NAKAMURA Takumi2012-09-124-0/+12
| | | | llvm-svn: 163701
* clang/test/SemaCXX/dcl_ambig_res.cpp: [PR13819] It requires LP64 for now due ↵NAKAMURA Takumi2012-09-121-0/+3
| | | | | | to __SIZE_TYPE__. llvm-svn: 163700
* clang/test: [PR8833] Introduce the feature "LP64" to suppress ↵NAKAMURA Takumi2012-09-1213-0/+18
| | | | | | | | LLP64-incompatible tests. I think some of them could be rewritten to fit also LLP64. llvm-svn: 163699
* clang/test/PCH/missing-file.cpp: Try to suppress accidental false on Windows.NAKAMURA Takumi2012-09-121-1/+4
| | | | | | %t.h might be touched by scanners as a hot file on Windows, to fail to remove %.h with single run. llvm-svn: 163697
* clang/test/lit.cfg: Fix a typo in comment.NAKAMURA Takumi2012-09-121-1/+1
| | | | llvm-svn: 163696
* Fix a test failure.Evgeniy Stepanov2012-09-121-4/+4
| | | | llvm-svn: 163691
* Fix regression where "looping back to the head of" PathDiagnosticEventsTed Kremenek2012-09-121-23/+341
| | | | | | | | were not emitted. Fixes <rdar://problem/12280665>. llvm-svn: 163683
* Teach -Wuninitialized to recognize __attribute__((analyzer_noreturn))Ted Kremenek2012-09-121-0/+23
| | | | | | | | | | | | | | | | | | for halting the propagation of uninitialized value tracking along a path. Unlike __attribute__((noreturn)), this attribute (which is used by clients of the static analyzer) can be used to annotate functions that essentially never return, but in rare cares may be allowed to return for (special) debugging purposes. This attribute has been shown in reducing false positives in the static analyzer by pruning false postives, and is equally applicable here. Handling this attribute in the CFG itself is another option, but this is not something all clients (e.g., possibly -Wunreachable-code) would want to see. Addresses <rdar://problem/12281583>. llvm-svn: 163681
* Adjust some analyzer tests to place widely shared inputs inside of anChandler Carruth2012-09-1210-8/+8
| | | | | | | | | | | | | | | 'Inputs' subdirectory. The general desire has been to have essentially all of the non-test input files live in such directories, with some exceptions for obvious and common patterns like 'foo.c' using 'foo.h'. This came up because our distributed test runner couldn't find some of the headers, for example with stl.cpp. No functionality changed, just shuffling around here. llvm-svn: 163674
* Fix up more "$t"s in this test that should be "%t"s.Chandler Carruth2012-09-121-1/+1
| | | | llvm-svn: 163673
* PR13811: Add a FunctionParmPackExpr node to handle references to functionRichard Smith2012-09-123-5/+43
| | | | | | | parameter packs where the reference is not being expanded but the pack has been. Previously, Clang would segfault in such cases. llvm-svn: 163672
* Make clang emit a flag for DW_AT_object_pointer for the artificialEric Christopher2012-09-122-3/+7
| | | | | | | | | | args where it should (implicit first arguments). FileCheck-ize a test as well and update tests to take into account the object pointer flag. rdar://9797999 llvm-svn: 163668
* Thread-safety analysis: fix bug in expression matching code.DeLesley Hutchins2012-09-111-0/+40
| | | | llvm-svn: 163656
* objective-C: warn if selector has nothing but bareFariborz Jahanian2012-09-111-2/+9
| | | | | | ':' in its name. // rdar://8366823 llvm-svn: 163650
* Comment parsing: handle non-builtin commands correctly. After semanticDmitri Gribenko2012-09-111-0/+5
| | | | | | | | | | | analysis registers a command, it becomes a "known" command for the lexer, since it has an ID. Having this freedom of choice to register a command is a good thing since BriefParser does not need this. But the parser should still invoke the correct semantic analysis method (actOnUnknownCommand) in this case. llvm-svn: 163646
* [analyzer] Use the static type for a virtual call if the dynamic type is worse.Jordan Rose2012-09-111-0/+16
| | | | | | | | | | | | | reinterpret_cast does not provide any of the usual type information that static_cast or dynamic_cast provide -- only the new type. This can get us in a situation where the dynamic type info for an object is actually a superclass of the static type, which does not match what CodeGen does at all. In these cases, just fall back to the static type as the best possible type for devirtualization. Should fix the crashes on our internal buildbot. llvm-svn: 163644
* Thread safety analysis: fix bug related to lock_returned attributeDeLesley Hutchins2012-09-111-2/+27
| | | | | | on templates. llvm-svn: 163642
* objective-C: warn under a flag if missing argumentFariborz Jahanian2012-09-111-0/+22
| | | | | | | name results in unintended selector name. // rdar://12263549 llvm-svn: 163634
* Fix namespace nesting and remove windows line endings.Rafael Espindola2012-09-111-21/+16
| | | | llvm-svn: 163620
* [libclang] Fix getting a cursor inside an angled #include directive.Argyrios Kyrtzidis2012-09-111-0/+4
| | | | | | | | | Fixed by pointing the end location of the preprocessed entity for the #include at the closing '>', instead of the start of '<'. rdar://11113134 llvm-svn: 163588
* [ms-inline asm] Add $$ before numeric constants in the IR.Chad Rosier2012-09-111-8/+14
| | | | llvm-svn: 163581
* [analyzer] Member function calls that use qualified names are non-virtual.Jordan Rose2012-09-112-0/+35
| | | | | | | | | | | C++11 [expr.call]p1: ...If the selected function is non-virtual, or if the id-expression in the class member access expression is a qualified-id, that function is called. Otherwise, its final overrider in the dynamic type of the object expression is called. <rdar://problem/12255556> llvm-svn: 163577
* [analyzer] Turn stl inlining back on.Anna Zaks2012-09-101-1/+1
| | | | | | | The one reported bug, which was exposed by stl inlining, is addressed in r163558. llvm-svn: 163574
* [analyzer] Do not count calls to small functions when computing stackAnna Zaks2012-09-101-0/+18
| | | | | | | | | depth. We only want to count how many substantial functions we inlined. This is an improvement to r163558. llvm-svn: 163571
* Provide fixed target triples to make test results consistent across ARM hosts.David Blaikie2012-09-106-10/+10
| | | | | | Patch by David Tweed, review by myself and John McCall. llvm-svn: 163564
* [libclang] Do index 'extern' declarations inside functions.Argyrios Kyrtzidis2012-09-101-0/+13
| | | | | | rdar://12257073 llvm-svn: 163563
* [analyzer] Add an option to enable/disable objc inlining.Anna Zaks2012-09-101-0/+33
| | | | llvm-svn: 163562
* [analyzer] Add ipa-always-inline-size option (with 3 as the default).Anna Zaks2012-09-101-0/+30
| | | | | | | | The option allows to always inline very small functions, whose size (in number of basic blocks) is set using -analyzer-config ipa-always-inline-size option. llvm-svn: 163558
* Fix PR13784: instantiation of an abstract class in a conditional operator.David Blaikie2012-09-101-0/+13
| | | | | | | | | | | | A couple of missing "RequireNonAbstractType" calls in conditional operator handling. I looked for opportunities to tie this check in to all relevant callers of PerformCopyInitialization (couldn't be all callers since this is called for base subobject copying too, where it's acceptable to copy abstract types) but the callers varied too much & in many cases had substantial code or conditionals on the RequireNonAbstractType call, the PerformCopyInitialization call, or the code between the two calls. llvm-svn: 163555
* [PCH] When loading fields from external storage make sure to alsoArgyrios Kyrtzidis2012-09-101-0/+35
| | | | | | | | | | | load in the IndirectField declarations as well. Field designators in initializer lists depend on traversing the fields decl chain to find the indirect fields. Fixes rdar://12239321 llvm-svn: 163552
* [analyzer] For now, don't inline C++ standard library functions.Jordan Rose2012-09-104-2/+94
| | | | | | | | | | | | | | | | This is a (heavy-handed) solution to PR13724 -- until we know we can do a good job inlining the STL, it's best to be consistent and not generate more false positives than we did before. We can selectively whitelist certain parts of the 'std' namespace that are known to be safe. This is controlled by analyzer config option 'c++-stdlib-inlining', which can be set to "true" or "false". This commit also adds control for whether or not to inline any templated functions (member or non-member), under the config option 'c++-template-inlining'. This option is currently on by default. llvm-svn: 163548
* Comment AST: TableGen'ize all command lists in CommentCommandTraits.cpp.Dmitri Gribenko2012-09-101-38/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now we have a list of all commands. This is a good thing in itself, but it also enables us to easily implement typo correction for command names. With this change we have objects that contain information about each command, so it makes sense to resolve command name just once during lexing (currently we store command names as strings and do a linear search every time some property value is needed). Thus comment token and AST nodes were changed to contain a command ID -- index into a tables of builtin and registered commands. Unknown commands are registered during parsing and thus are also uniformly assigned an ID. Using an ID instead of a StringRef is also a nice memory optimization since ID is a small integer that fits into a common bitfield in Comment class. This change implies that to get any information about a command (even a command name) we need a CommandTraits object to resolve the command ID to CommandInfo*. Currently a fresh temporary CommandTraits object is created whenever it is needed since it does not have any state. But with this change it has state -- new commands can be registered, so a CommandTraits object was added to ASTContext. Also, in libclang CXComment has to be expanded to include a CXTranslationUnit so that all functions working on comment AST nodes can get a CommandTraits object. This breaks binary compatibility of CXComment APIs. Now clang_FullComment_getAsXML(CXTranslationUnit TU, CXComment CXC) doesn't need TU parameter anymore, so it was removed. This is a source-incompatible change for this C API. llvm-svn: 163540
* Thread-safety analysis: differentiate between two forms of analysis; a preciseDeLesley Hutchins2012-09-101-18/+41
| | | | | | | | | analysis that may give false positives because it is confused by aliasing, and a less precise analysis that has fewer false positives, but may have false negatives. The more precise warnings are enabled by -Wthread-safety-precise. An additional note clarify the warnings in the precise case. llvm-svn: 163537
* Now that I have a test file to work with, disable the Filecheck part of this ↵Ted Kremenek2012-09-101-2/+2
| | | | | | test. llvm-svn: 163536
* Correctly 'cat' out test files.Ted Kremenek2012-09-101-2/+2
| | | | llvm-svn: 163534
* As a debugging aid to unbreak the buildbots, cat the plist files so I can ↵Ted Kremenek2012-09-101-2/+2
| | | | | | view them on different builders. llvm-svn: 163529
* More tweaking and test cases for call to superFariborz Jahanian2012-09-101-2/+37
| | | | | | annotations. // rdar://6386358 llvm-svn: 163525
* Re-enable FileCheck testing of retain-release.m test, and forceTed Kremenek2012-09-101-3/+3
| | | | | | a C++ dialect. Let's see if this is the portability issue with this test. llvm-svn: 163524
* objective-C: Improving diagnostocs for missing call toFariborz Jahanian2012-09-103-4/+4
| | | | | | super's annotated methods. // rdar://6386358 llvm-svn: 163517
* Temporarily disable FileCheck part of this test.Ted Kremenek2012-09-101-2/+2
| | | | llvm-svn: 163515
* Allow vector types in pseudo-destructor expressions. Fixes PR13798.Douglas Gregor2012-09-101-0/+11
| | | | llvm-svn: 163514
* Revert "Revert Ted's r163489 and r163490, due to breakage."Ted Kremenek2012-09-101-2777/+2776
| | | | | | | | | I need to see how this breaks on other platforms when I fix the issue that Benjamin Kramer pointed out. This includes r163489 and r163490, plus a two line change. llvm-svn: 163512
* Wrong crtbegin/crtend pair used for PIE on Android.Evgeniy Stepanov2012-09-101-0/+17
| | | | | | | | Android uses the same flavour of crt*.o for PIE and non-PIE executables, and a different one for DSOs. GNU/Linux, on the other hand, uses one set of crt*.o for non-PIE executables, and another for both PIE executables and DSOs. llvm-svn: 163500
* Revert Ted's r163489 and r163490, due to breakage.NAKAMURA Takumi2012-09-101-2776/+2777
| | | | | | | r163489, "Take another crack at stabilizing the emission order of analyzer" r163490, "Use isBeforeInTranslationUnitThan() instead of operator<." llvm-svn: 163497
* MIPS: Use -march=arch option to select either generic MIPS ISA,Simon Atanasyan2012-09-102-0/+10
| | | | | | | | or the name of a particular processor. The patch reviewed by Douglas Gregor. llvm-svn: 163492
* Take another crack at stabilizing the emission order of analyzerTed Kremenek2012-09-101-2777/+2776
| | | | | | | | | | | | | | diagnostics without using FoldingSetNodeIDs. This is done by doing a complete recursive comparison of the PathDiagnostics. Note that the previous method of comparing FoldingSetNodeIDs did not end up relying on unstable things such as pointer addresses, so I suspect this may still have some issues on various buildbots because I'm not sure if the true source of non-determinism has been eliminated. The tests pass for me, so the only way to know is to commit this change and see what happens. llvm-svn: 163489
* Fixed support for disabled wchar_t and added an appropriate test.Abramo Bagnara2012-09-091-1/+8
| | | | llvm-svn: 163476
* clang/test/Sema/format-strings-scanf.c: Relax a couple of expressions with ↵NAKAMURA Takumi2012-09-081-2/+2
| | | | | | | | | expected-warning-re to let matched for Win32 targets. - format specifies type 'wchar_t **' (aka 'int **') but the argument has type 'float *' - format specifies type 'wchar_t **' (aka 'unsigned short **') but the argument has type 'float *' llvm-svn: 163468
* Add some ARM EABI preprocessor builtins testsAnton Korobeynikov2012-09-081-0/+209
| | | | llvm-svn: 163467
OpenPOWER on IntegriCloud