]>
granicus.if.org Git - clang/log
Douglas Gregor [Wed, 4 Nov 2009 22:24:30 +0000 (22:24 +0000)]
Give DeclarationName's operator< a more predictable, useful ordering
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86055
91177308 -0d34-0410-b5e6-
96231b3b80d8
John Thompson [Wed, 4 Nov 2009 21:52:17 +0000 (21:52 +0000)]
Fixed for running on Windows.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86053
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 4 Nov 2009 21:50:46 +0000 (21:50 +0000)]
Fix a little canonical-types issue with non-type template arguments.
Fixes PR5349.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86052
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 4 Nov 2009 21:13:15 +0000 (21:13 +0000)]
InitializePreprocessor cannot fail.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86048
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 4 Nov 2009 21:13:02 +0000 (21:13 +0000)]
Move -undef flag into PreprocessorInitOptions
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86047
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 4 Nov 2009 19:13:37 +0000 (19:13 +0000)]
Add code gen for pointer-to-member function in
ctor's initializer. Fixes pr5178.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86040
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 4 Nov 2009 18:18:19 +0000 (18:18 +0000)]
Properly replace (cxxscope, template-id) annotation tokens with a
single typename annotation token when backtracing. Fixes PR5350.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86034
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 4 Nov 2009 17:57:40 +0000 (17:57 +0000)]
This patch extends CleanupScope to support destruction
of array objects on block exit. Patch is by Anders Calrsson.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86032
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 4 Nov 2009 17:16:11 +0000 (17:16 +0000)]
Don't try to check the initialization of fields with dependent
types. Fixes PR5352.
Fariborz, please review.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86031
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 4 Nov 2009 16:49:01 +0000 (16:49 +0000)]
Store the unresolved class type in MemberPointerType's Class field,
from Peter Collingbourne!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86030
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Nov 2009 16:37:13 +0000 (16:37 +0000)]
this test has started failing due to an optimizer change. Clang tests
should only look at -O0 IR output not -O3 assembly output. XFAIL it for
now.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86029
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 4 Nov 2009 16:32:12 +0000 (16:32 +0000)]
Eliminate the "old" ways of parsing operator-function-ids and
conversion-function-ids; all clients have moved on to
ParseUnqualifiedId.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86028
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 4 Nov 2009 16:30:06 +0000 (16:30 +0000)]
Switch parsing of using declarations over to ParseUnqualifiedId.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86027
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 4 Nov 2009 07:28:41 +0000 (07:28 +0000)]
Preserve type source information in sizeof/alignof expressions, and pass it
through to indexing.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86018
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 4 Nov 2009 07:01:15 +0000 (07:01 +0000)]
When performing template instantiation (transformation) of
expressions, keep track of whether we are immediately taking the
address of the expression. Pass this flag when building a declaration
name expression so that we handle pointer-to-member constants
properly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86017
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 4 Nov 2009 06:57:08 +0000 (06:57 +0000)]
Fix commento.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86016
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 4 Nov 2009 06:39:40 +0000 (06:39 +0000)]
Update CMake.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86015
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 4 Nov 2009 06:24:57 +0000 (06:24 +0000)]
Move -fcolor-diagnostics logic to driver.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86014
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 4 Nov 2009 06:24:47 +0000 (06:24 +0000)]
Move logic for selection -fmessage-length= to driver.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86013
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 4 Nov 2009 06:24:38 +0000 (06:24 +0000)]
Fix indentation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86011
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 4 Nov 2009 06:24:30 +0000 (06:24 +0000)]
Factor out a diagnostic options class.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86010
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 4 Nov 2009 04:24:44 +0000 (04:24 +0000)]
Add FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86004
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 4 Nov 2009 04:24:16 +0000 (04:24 +0000)]
Catch uses of undefined values when they are used in assignment, thus catching such bugs closer to the source.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86003
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 4 Nov 2009 04:03:43 +0000 (04:03 +0000)]
Add mising #ifdef guards.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86002
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 4 Nov 2009 03:36:09 +0000 (03:36 +0000)]
Diagnose the use of 'fastcall' on functions without prototypes or with
varargs prototypes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86001
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 4 Nov 2009 03:03:43 +0000 (03:03 +0000)]
Diagnose __builtin_offsetof on incomplete types. Fixes
rdar://problem/
7222956
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85999
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 4 Nov 2009 02:18:39 +0000 (02:18 +0000)]
Change our basic strategy for avoiding deprecation warnings when the decl use
appears in a deprecated context. In the new strategy, we emit the warnings
as usual unless we're currently parsing a declaration, where "declaration" is
restricted to mean a decl group or a few special cases in Objective C. If
we *are* parsing a declaration, we queue up the deprecation warnings until
the declaration has been completely parsed, and then emit them only if the
decl is not deprecated.
We also standardize the bookkeeping for deprecation so as to avoid special cases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85998
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Wed, 4 Nov 2009 01:43:07 +0000 (01:43 +0000)]
Merge ZeroSizedVLAChecker and UndefSizedVLAChecker.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85996
91177308 -0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Wed, 4 Nov 2009 01:18:09 +0000 (01:18 +0000)]
Merge constant array and structures. This will create a global variables for arrays and structs that are constant and their initializer is constant. It is on by default but can be disable with the flag -fno-merge-all-constants.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85991
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Wed, 4 Nov 2009 01:11:15 +0000 (01:11 +0000)]
Fix 80-col violations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85990
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 4 Nov 2009 00:56:37 +0000 (00:56 +0000)]
Implement support for parsing dependent template-ids that refer to
overloaded operators, e.g.,
p->template operator+<T>()
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85989
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Wed, 4 Nov 2009 00:53:51 +0000 (00:53 +0000)]
Split out return adjustments in thunks from this adjustment in thunks
so the optimizer can tailcall into the return value adjustment thunk.
This improves codesize for complex hierarchies.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85988
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 4 Nov 2009 00:34:40 +0000 (00:34 +0000)]
Use unsigned char instead of unsigned : 8 to make the optimizer happier.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85985
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 4 Nov 2009 00:09:15 +0000 (00:09 +0000)]
Refactor StoreManager::BindDecl() to take a VarRegion* instead of a VarDecl*, and modify GRExprEngine::EvalBind() to handle decl initialization as well. This paves the way for adding "checker" visitation in EvalBind().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85983
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 3 Nov 2009 23:50:34 +0000 (23:50 +0000)]
Misc cleanups.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85978
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 3 Nov 2009 23:32:42 +0000 (23:32 +0000)]
Test case for recent checkin.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85972
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 3 Nov 2009 23:30:34 +0000 (23:30 +0000)]
Change GRTransferFuncs::RegisterChecks() to take a GRExprEngine& instead of a BugReporter&. This paves the way for pulling some of the retain/release checker into a "Checker" class.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85971
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 3 Nov 2009 23:25:48 +0000 (23:25 +0000)]
Refine volatile handling, specifically, we must have the canonical
type to look at the volatile specifier. I found these all from just
hand auditing the code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85967
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 3 Nov 2009 23:16:33 +0000 (23:16 +0000)]
Parsing and semantic analysis for template-ids that name overloaded
operators, e.g.,
operator+<int>
which now works in declarators, id-expressions, and member access
expressions. This commit only implements the non-dependent case, where
we can resolve the template-id to an actual declaration.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85966
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Tue, 3 Nov 2009 22:39:56 +0000 (22:39 +0000)]
make 'make clean' work on Solaris, per Gabor Greif comment
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85958
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Tue, 3 Nov 2009 22:21:28 +0000 (22:21 +0000)]
make 'make clean' clean everything
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85957
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 3 Nov 2009 22:20:01 +0000 (22:20 +0000)]
We have to ensure we have the canonical type to do this. This is but
one instance of a large problem. assert for non-canoical types would
help track down these things.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85956
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Tue, 3 Nov 2009 22:17:39 +0000 (22:17 +0000)]
set svn:ignore
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85955
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 3 Nov 2009 21:24:04 +0000 (21:24 +0000)]
Tweak some comments about unqualified-id and id-expression parsing. No functionality change
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85942
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 3 Nov 2009 21:13:47 +0000 (21:13 +0000)]
CFieldCallback doesn't need to create an ExtensionRAIIObject: it's actually
automatically shadowed by the ExtensionRAIIObject created by
ParseStructDeclaration.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85941
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 3 Nov 2009 20:53:48 +0000 (20:53 +0000)]
Remove a bunch of #if 0'd code made irrelevant by the latest ParseUnqualifiedId changes
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85938
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 3 Nov 2009 20:38:53 +0000 (20:38 +0000)]
Remove previous patch for pr5296 due to further clarification
of value-initialization and trivial constructors.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85935
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 3 Nov 2009 19:50:27 +0000 (19:50 +0000)]
Implement support for the -undef command line option, patch by
Roman Divacky! PR5363
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85932
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 3 Nov 2009 19:48:51 +0000 (19:48 +0000)]
silence a warning.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85931
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 3 Nov 2009 19:44:04 +0000 (19:44 +0000)]
Replace the code that parses member access expressions after "." or
"->" with a use of ParseUnqualifiedId. Collapse
ActOnMemberReferenceExpr, ActOnDestructorReferenceExpr (both of them),
ActOnOverloadedOperatorReferenceExpr,
ActOnConversionOperatorReferenceExpr, and
ActOnMemberTemplateIdReferenceExpr into a single, new action
ActOnMemberAccessExpr that does the same thing more cleanly (and can
keep more source-location information).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85930
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 3 Nov 2009 19:33:12 +0000 (19:33 +0000)]
Silence a warning by giving Parser::FieldCallback a virtual destructor, and
anchor the vtable to Parser.cpp for good measure.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85927
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 3 Nov 2009 19:28:52 +0000 (19:28 +0000)]
vtable testcase for recent work on vcall/vbase offsets.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85925
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 3 Nov 2009 19:26:08 +0000 (19:26 +0000)]
Reorganize the parsing of decl groups / function definitions so that
declarators are parsed primarily within a single function (at least for
these cases). Remove some excess diagnostics arising during parse failures.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85924
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 3 Nov 2009 19:03:17 +0000 (19:03 +0000)]
Refine codegen for covariant thunks that return references.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85916
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 3 Nov 2009 18:41:06 +0000 (18:41 +0000)]
Merge NullDerefChecker.[h,cpp] and UndefDerefChecker.[h,cpp]. They are essentially two parts of the same check.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85911
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 3 Nov 2009 17:56:18 +0000 (17:56 +0000)]
Fix tests to not depend on /dev/null existing.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85908
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 3 Nov 2009 16:59:27 +0000 (16:59 +0000)]
Refine return value adjustments for thunks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85905
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 3 Nov 2009 16:56:39 +0000 (16:56 +0000)]
Use ParseUnqualifiedId when parsing id-expressions. This eliminates
yet another copy of the unqualified-id parsing code.
Also, use UnqualifiedId to simplify the Action interface for building
id-expressions. ActOnIdentifierExpr, ActOnCXXOperatorFunctionIdExpr,
ActOnCXXConversionFunctionExpr, and ActOnTemplateIdExpr have all been
removed in favor of the new ActOnIdExpression action.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85904
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 3 Nov 2009 16:11:57 +0000 (16:11 +0000)]
Fix documentation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85901
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Tue, 3 Nov 2009 13:37:33 +0000 (13:37 +0000)]
Update CMakeLists.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85898
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Tue, 3 Nov 2009 12:13:38 +0000 (12:13 +0000)]
Pull VLA size checker into its own files.
Split it to two checkers, one for undefined size,
the other for zero size, so that we don't need to query the size
when emitting the bug report.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85895
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 3 Nov 2009 08:18:34 +0000 (08:18 +0000)]
Add link to FatELF project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85888
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 3 Nov 2009 08:03:59 +0000 (08:03 +0000)]
Implement: <rdar://problem/
6250216 > Warn against using -[NSAutoreleasePool release] in GC mode
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85887
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 3 Nov 2009 08:00:42 +0000 (08:00 +0000)]
Move 'static inline' functions GetNullarySelector() and GetUnarySelector() from CFRefCount.cpp to ASTContext.h. These functions are likely to be generally useful.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85886
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 3 Nov 2009 07:49:31 +0000 (07:49 +0000)]
XFAIL Driver/hello.c on Windows.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85885
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Tue, 3 Nov 2009 07:35:33 +0000 (07:35 +0000)]
Pull AttrNonNullChecker into its own files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85883
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 3 Nov 2009 07:25:53 +0000 (07:25 +0000)]
Add target_triple to Clang site configuration.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85881
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 3 Nov 2009 07:25:45 +0000 (07:25 +0000)]
Switch XFAIL format to match LLVM.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85880
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Tue, 3 Nov 2009 07:14:39 +0000 (07:14 +0000)]
Update CMake file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85879
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 3 Nov 2009 06:59:59 +0000 (06:59 +0000)]
Rename NSErrorCheck to NSErrorChecker.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85877
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 3 Nov 2009 06:46:41 +0000 (06:46 +0000)]
Update CMake file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85876
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Tue, 3 Nov 2009 06:46:03 +0000 (06:46 +0000)]
Pull UndefinedArgChecker into its own files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85875
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 3 Nov 2009 06:18:05 +0000 (06:18 +0000)]
Fix buffer overflow in PrintMacroDefinition() by inverting the check to see if the target buffer needs to be resized. Fixes <rdar://problem/
7255377 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85872
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Tue, 3 Nov 2009 05:48:04 +0000 (05:48 +0000)]
Pull BadCallChecker into its own files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85868
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 3 Nov 2009 05:39:12 +0000 (05:39 +0000)]
retain/release checker: CGBitmapContextCreateWithData() returns an owned object.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85867
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 3 Nov 2009 05:34:07 +0000 (05:34 +0000)]
retain/release checker: Add special handling of CGBitmapContextCreateWithData().
Fixes: <rdar://problem/7358899>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85864
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 3 Nov 2009 05:11:39 +0000 (05:11 +0000)]
pr5371 likely has nothing to do with this.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85862
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 3 Nov 2009 03:16:46 +0000 (03:16 +0000)]
Refine codegen for non-virtual this adjustments for thunks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85856
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 3 Nov 2009 02:38:08 +0000 (02:38 +0000)]
Switch ParseStructDeclaration to a callback-based API. This will make
it easier to track within Sema whether the parser is parsing a declaration.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85855
91177308 -0d34-0410-b5e6-
96231b3b80d8
John Thompson [Tue, 3 Nov 2009 02:36:47 +0000 (02:36 +0000)]
Fixed for running on Windows.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85854
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 3 Nov 2009 02:12:59 +0000 (02:12 +0000)]
Add virtual adjustments for this for thunks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85852
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 3 Nov 2009 01:35:08 +0000 (01:35 +0000)]
Introduce a new class, UnqualifiedId, that provides a parsed
representation of a C++ unqualified-id, along with a single parsing
function (Parser::ParseUnqualifiedId) that will parse all of the
various forms of unqualified-id in C++.
Replace the representation of the declarator name in Declarator with
the new UnqualifiedId class, simplifying declarator-id parsing
considerably and providing more source-location information to
Sema. In the future, I hope to migrate all of the other
unqualified-id-parsing code over to this single representation, then
begin to merge actions that are currently only different because we
didn't have a unqualified notion of the name in the parser.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85851
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 3 Nov 2009 00:01:38 +0000 (00:01 +0000)]
Assortment of property attributes declared in continuation
class must match those of same property declared
in its primary class. (Fixes radar
7352425 )
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85843
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Mon, 2 Nov 2009 23:47:45 +0000 (23:47 +0000)]
Add basic codegen for thunks that return values.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85842
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Mon, 2 Nov 2009 23:22:01 +0000 (23:22 +0000)]
Refine codegen for thunks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85839
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 2 Nov 2009 23:19:29 +0000 (23:19 +0000)]
Remove GRExprEngine::CheckerVisitLocation(). It was only called in one place, so we inlined it in to GRExprEngine::EvalLocation().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85838
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Mon, 2 Nov 2009 22:45:15 +0000 (22:45 +0000)]
Property declared in continuation class can only be used to
change a readonly property declared in the class (and its inherited protocols)
to writable property. (Fixes radar
7350645 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85836
91177308 -0d34-0410-b5e6-
96231b3b80d8
John Thompson [Mon, 2 Nov 2009 22:28:12 +0000 (22:28 +0000)]
Added __has_include and __has_include_next.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85834
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 2 Nov 2009 22:24:53 +0000 (22:24 +0000)]
Hopefully make gcc-4.0 happy with respect to the following warning:
warning: 'class clang::StackFrameContext' has virtual functions but non-virtual destructor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85833
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 2 Nov 2009 22:23:08 +0000 (22:23 +0000)]
Sort export list.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85832
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 2 Nov 2009 22:11:26 +0000 (22:11 +0000)]
Remove unused header.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85828
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 2 Nov 2009 21:48:09 +0000 (21:48 +0000)]
clean up namespace.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85826
91177308 -0d34-0410-b5e6-
96231b3b80d8
Edward O'Callaghan [Mon, 2 Nov 2009 21:25:11 +0000 (21:25 +0000)]
Add note to FIXME about PR5371.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85825
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 2 Nov 2009 18:54:58 +0000 (18:54 +0000)]
Add "virtual" keywords for clarity.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85815
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Mon, 2 Nov 2009 18:45:36 +0000 (18:45 +0000)]
Diagnose implementation of a property declared in a category
in its class implementation instead of crashing. Fixes radar
7350345 .
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85813
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Sun, 1 Nov 2009 20:32:48 +0000 (20:32 +0000)]
When determining whether a reference to a static data member is an
integral constant expression, make sure to find where the initializer
was provided---inside or outside the class definition---since that can
affect whether we have an integral constant expression (and, we need
to see the initializer itself).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85741
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Sun, 1 Nov 2009 17:08:18 +0000 (17:08 +0000)]
Within a template, qualified name lookup can refer to a non-dependent type
that is not known to be a base class at template definition time due
to some dependent base class. Treat qualified name lookup that refers
to a non-static data member or function as implicit class member
access when the "this" type would be dependent.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85718
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 31 Oct 2009 20:42:26 +0000 (20:42 +0000)]
Add missing colons for FileCheck.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85683
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Sat, 31 Oct 2009 20:11:46 +0000 (20:11 +0000)]
Fix -pthread on dragonfly. Patch by Sascha Wildner.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85679
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Sat, 31 Oct 2009 20:06:59 +0000 (20:06 +0000)]
Refine vcall/vbase ordering with vtable construction.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85677
91177308 -0d34-0410-b5e6-
96231b3b80d8