aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-06-16Add IOKit test cases for retain/release checker.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73549 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16Update Clang to include the InitializeAllTargets andDouglas Gregor
InitializeAllAsmPrinters LLVM headers. Also includes some minor fixes for the CMake-based build with Xcode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73544 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16simplify .td fileChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73542 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16Add -Wundeclared-selector to -Wmost options group.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73524 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16It is possible that main input file does not have any symbol with debug ↵Devang Patel
info. To handle this edge case, always create main compile unit first. This fixes PR 4228. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73520 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16Test case was left behind from my last patch.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73519 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16Update checker build.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73518 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16testcase for r72869, it turns out that it happens in Ruby.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73514 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16follow-on to my patch: some targets (like sparc) do notChris Lattner
have target-specific builtins, and do not set the count. Just default to 0 for these targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73510 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16Implements -Wundeclared-selector for ObjC.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73495 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16remove extraneous diff.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73494 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16my refactoring of builtins changed target-specific builtins to only beChris Lattner
registered when PCH wasn't being used. We should always install (in BuiltinInfo) information about target-specific builtins, but we shouldn't register any builtin identifier infos. This fixes the build of apps that use PCH and target specific builtins together. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73492 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16Use canonical type for building ElementRegion. Otherwise ElementRegions cannotZhongxing Xu
be unique. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73482 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16Do not invalidate unboundable regions in GRSimpleVals::EvalCall().Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73474 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16Handle temporaries in default arguments.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73462 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16Keep track of whether a type parameter type is a parameter pack.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73452 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16Add a comment to Sema::ActOnTranslationUnitScope().Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73450 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15accept and ignore -Wdiv-by-zeroChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73446 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Fix: <rdar://problem/6945561> -[CIContext createCGLayerWithSize:info:] ↵Ted Kremenek
misinterpreted by clang scan-build git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73415 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Fix: <rdar://problem/6961230> add knowledge of IOKit functions to ↵Ted Kremenek
retain/release checker git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73411 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Tweak the C++ open projects pageDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73409 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15PR4395: Don't detect token concatenation in C mode for Eli Friedman
C++-specific tokens. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73408 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Include <limits>Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73403 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15More XML output support, from Olaf Krzikalla!Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73402 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15More parameter pack work.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73395 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Revert r73341.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73393 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15More [basic.lookup.unqual] tests.Daniel Dunbar
- p13 and p14 are important failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73392 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Add a new 'Pack' argument kind to TemplateArgument. This is not yet used.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73391 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Base SFINAE error suppression counting on the class of an error, notDouglas Gregor
its (possibly-remapped) diagnostics. Thanks, Chris! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73390 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Note that we've implemented the right angle brackets extension in C++0xDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73389 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Test for [basic.lookup.unqual]p3Daniel Dunbar
- Failing, at least in part, because lookup in parser is finding a friend function where it shouldn't. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73388 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15'not magic' => 'is not magic'Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73386 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15PR4388: get rid of an extra # line directive; in addition to being Eli Friedman
unnecessary, this was causing issues for assembler-with-cpp mode, which doesn't process the directive. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73382 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Minor tweak to -fdiagnostics-print-source-range-info to make it printChris Lattner
ranges more similar to the console output. Consider: #define FOO(X, Y) X/ Y void foo(int *P, int *Q) { FOO(P, Q); } Before we emitted: t.c:4:3:{4:3-4:6}{4:3-4:6}: error: invalid operands to binary expression ('int *' and 'int *') FOO(P, Q); ^~~~~~~~~ ... Note that while we underline the macro args that the range info just includes FOO without its macros. This change teaches the printed ranges to include macro args also so that we get: t.c:4:3:{4:3-4:12}{4:3-4:12}: error: invalid operands to binary expression ('int *' and 'int *') FOO(P, Q); ^~~~~~~~~ ... This fixes rdar://6939599 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73378 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Fix #pragma GCC system_header by making it insert a virtual linemarker intoChris Lattner
the file at the point of the pragma. This allows clang to know that all sourcelocations after the pragma are in a system header. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73376 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15rename testChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73375 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15convert this test to -verify mode.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73374 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15If PCH refers to a file that doesn't exist anymore, emit a nice errorChris Lattner
like: fatal error: could not find file '1.h' referenced by PCH file instead of aborting with an assertion failure, PR4219 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73371 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15use the new Path::isAbsolute function, fixing a fixme. Patch by Gregory ↵Chris Lattner
Curfman! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73370 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15no really, add the lines :)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73367 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15Fix PR2741 by making our newline tracking be aware of newlines thatChris Lattner
can occur in the middle of comment tokens. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73365 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15"GCC emits an __objc_class_name_{classname} symbol for every class, and a ↵Chris Lattner
corresponding reference to this symbol for every compilation unit that references the class. This causes linker errors when you try linking a program which references some classes but doesn't define them. The attached patch implements this support in clang, so you can compile a class with clang, reference it in a file compiled with GCC, and have it all work correctly." Patch by David Chisnall! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73364 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-14PR4391: Tweak -ast-print output to generate valid output for edge cases Eli Friedman
like "int x = + +3;". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73356 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-14PR4390: Make sure to handle anonymous unions correctly while building Eli Friedman
static intializers for structs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73349 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-14Test modification.Fariborz Jahanian
Patch by Jean-Daniel Dupas git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73343 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-14fix the menu's linksNuno Lopes
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73341 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-14Introduce a SFINAE "trap" that keeps track of the number of errorsDouglas Gregor
that were suppressed due to SFINAE. By checking whether any errors occur at the end of template argument deduction, we avoid the possibility of suppressing an error (due to SFINAE) and then recovering so well that template argument deduction never detects that there was a problem. Thanks to Eli for the push in this direction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73336 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-14Update LLVM.Douglas Gregor
Implement support for C++ Substitution Failure Is Not An Error (SFINAE), which says that errors that occur during template argument deduction do *not* produce diagnostics and do not necessarily make a program ill-formed. Instead, template argument deduction silently fails. This is currently implemented for template argument deduction during matching of class template partial specializations, although the mechanism will also apply to template argument deduction for function templates. The scheme is simple: - If we are in a template argument deduction context, any diagnostic that is considered a SFINAE error (or warning) will be suppressed. The error will be propagated up the call stack via the normal means. - By default, all warnings and errors are SFINAE errors. Add the NoSFINAE class to a diagnostic in the .td file to make it a hard error (e.g., for access-control violations). Note that, to make this fully work, every place in Sema that emits an error *and then immediately recovers* will need to check Sema::isSFINAEContext() to determine whether it must immediately return an error rather than recovering. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73332 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-14Fix "for all intensive purposes" to "for all intents and purposes".Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73323 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-14PR4351: Add constant evaluation for constructs like "foo == NULL", where Eli Friedman
foo has a constant address. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73321 91177308-0d34-0410-b5e6-96231b3b80d8