| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 86218
|
|
|
|
|
|
| |
class that is overridden in a base that isn't morally virtual.
llvm-svn: 86217
|
|
|
|
|
|
|
|
|
| |
stack variable or a garbage
value into their own respective subclasses of Checker (and put them in .cpp files where their
implementation details are hidden from GRExprEngine).
llvm-svn: 86215
|
|
|
|
|
|
|
|
|
|
| |
class type, don't perform the array-to-pointer or function-to-pointer
conversions, because we may end up binding a reference to a function
or array.
With this change, FileCheck now passes -fsyntax-only!
llvm-svn: 86211
|
|
|
|
|
|
|
| |
implicit conversion sequence, check the validity of this conversion
and then perform it.
llvm-svn: 86210
|
|
|
|
| |
llvm-svn: 86209
|
|
|
|
|
|
| |
DeferenceChecker and friends so that they always report the same bug type.
llvm-svn: 86208
|
|
|
|
|
|
|
| |
It has to do with vararg constructors used as conversion
functions. Code gen needs work. This is WIP.
llvm-svn: 86207
|
|
|
|
|
|
| |
type-dependent initializers.
llvm-svn: 86197
|
|
|
|
| |
llvm-svn: 86195
|
|
|
|
| |
llvm-svn: 86183
|
|
|
|
| |
llvm-svn: 86177
|
|
|
|
|
|
| |
just for the unqualified, unaliased bool.
llvm-svn: 86174
|
|
|
|
|
|
| |
and should especially not try to evaluate them.
llvm-svn: 86173
|
|
|
|
|
|
| |
enum/class/struct/union specifier; in invalid code, we may also see ClassTemplateDecls.
llvm-svn: 86171
|
|
|
|
| |
llvm-svn: 86167
|
|
|
|
|
|
| |
C++. Fixed PR5401
llvm-svn: 86165
|
|
|
|
| |
llvm-svn: 86156
|
|
|
|
|
|
| |
initialization before main. Fixes pr5396.
llvm-svn: 86145
|
|
|
|
|
|
|
| |
always zero in this context" warning logic. Also, make the diagnostic
itself more precise when referring to pointer values ("NULL" vs. "zero").
llvm-svn: 86143
|
|
|
|
| |
llvm-svn: 86142
|
|
|
|
|
|
| |
pointers. Otherwise, subscripting an array leads to no candidates at all. Fixes PR5360.
llvm-svn: 86140
|
|
|
|
|
|
| |
This fixes PR5048. Also fix a bug where zero-sized arrays weren't warned about when the size was unsigned.
llvm-svn: 86136
|
|
|
|
| |
llvm-svn: 86135
|
|
|
|
|
|
|
|
|
|
|
|
| |
(without complaining if it fails) to get proper semantics: reference
binding with a derived-to-base conversion and the enumeration of
constructors for user-defined conversions. There are probably more
cases to fix, but my prior attempt at statically ensuring that
complete-type checking always happens failed. Perhaps I'll try again.
With this change, Clang can parse include/llvm/*.h!
llvm-svn: 86129
|
|
|
|
|
|
|
|
|
|
|
|
| |
DiagnoseSignCompare into Sema::CheckSignCompare and call it from more places.
Add some enumerator tests. These seem to expose some oddities in the
types we're converting C++ enumerators to; in particular, they're converting
to unsigned before int, which seems to contradict 4.5 [conv.prom] p2.
Note to self: stop baiting Doug in my commit messages.
llvm-svn: 86128
|
|
|
|
| |
llvm-svn: 86127
|
|
|
|
|
|
| |
in covariant thunks that return references.
llvm-svn: 86121
|
|
|
|
|
|
| |
pointers are returned.
llvm-svn: 86120
|
|
|
|
| |
llvm-svn: 86116
|
|
|
|
|
|
|
| |
invariants (diagnostics with source informations must occur between
{Begin,End}SourceFile).
llvm-svn: 86113
|
|
|
|
|
|
| |
Preprocessor&, and simplify.
llvm-svn: 86112
|
|
|
|
| |
llvm-svn: 86111
|
|
|
|
|
|
|
|
| |
migrate work in the destructors of PathDiagnosticClients from their
destructors to FlushReports(). The destructors now currently call
FlushReports(); this will be fixed in a subsequent patch.
llvm-svn: 86108
|
|
|
|
|
|
|
|
|
| |
This is conceptually correct, but adds a huge hack to HighlightMacros which is
in fact doing all sorts of mutation to the Preprocessor. See FIXME.
Chris, please review.
llvm-svn: 86107
|
|
|
|
|
|
|
|
|
| |
a little fuzzy, but conceptually it's just uniquing the identifier.
Chris, please review. I debated splitting into const/non-const versions where
the const one propogated constness to the resulting IdentifierInfo*.
llvm-svn: 86106
|
|
|
|
| |
llvm-svn: 86105
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
still be dependent or invoke an overloaded operator. Previously, we
only supported builtin operators.
BinaryOperator/CompoundAssignOperator didn't have this issue because
we always built a CXXOperatorCallExpr node, even when name lookup
didn't find any functions to save until instantiation time. Now, that
code builds a BinaryOperator or CompoundAssignOperator rather than a
CXXOperatorCallExpr, to save some space.
llvm-svn: 86087
|
|
|
|
|
|
|
|
| |
an "assign expression", representing the expressions where the value
binding occurs and the assignment takes place respectively. These are
largely syntactic clues for better error reporting.
llvm-svn: 86084
|
|
|
|
|
|
|
|
| |
Conditional operands are next.
Fixes part of rdar://problem/7289584.
llvm-svn: 86083
|
|
|
|
| |
llvm-svn: 86079
|
|
|
|
| |
llvm-svn: 86076
|
|
|
|
|
|
| |
explicitly-specified template arguments, too!
llvm-svn: 86066
|
|
|
|
| |
llvm-svn: 86065
|
|
|
|
|
|
| |
introduces no new function changes. Patch by Ken Dyck!
llvm-svn: 86062
|
|
|
|
| |
llvm-svn: 86061
|
|
|
|
|
|
|
|
|
| |
type of the object even when it is dependent. Specifically, this makes
sure that we get the right type for "this->", which is important when
performing name lookup into this scope to determine whether an
identifier or operator-function-id is a template name.
llvm-svn: 86060
|
|
|
|
| |
llvm-svn: 86055
|
|
|
|
|
|
| |
Fixes PR5349.
llvm-svn: 86052
|
|
|
|
| |
llvm-svn: 86048
|