| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
update Makefile.
llvm-svn: 122493
|
|
|
|
| |
llvm-svn: 122492
|
|
|
|
|
|
|
|
|
|
|
| |
set the RUN line correctly in a test file!
Mark a bunch of tests for ArrayBoundCheckerV2
as FIXME's, as our current lack of pointer
arithmetic handling causes these to be all
false positives/negatives.
llvm-svn: 122471
|
|
|
|
|
|
|
| |
to correctly print out negative values for
signed integers.
llvm-svn: 122470
|
|
|
|
|
|
|
| |
checker based on using raw (symbolic) byte offsets
from a base region.
llvm-svn: 122469
|
|
|
|
|
|
| |
for array indices.
llvm-svn: 122468
|
|
|
|
|
|
|
| |
to SValBuilder. These two query methods are useful
for constructing SVals.
llvm-svn: 122467
|
|
|
|
|
|
|
| |
to also include signedness and bitwidth of
the underlying integer.
llvm-svn: 122466
|
|
|
|
|
|
|
|
|
|
|
|
| |
parameter packs. In particular, a parameter pack not otherwise deduced
is deduced to an empty parameter pack.
The C++0x wording here is a bit unfortunate; this should really only
apply to function templates, and it mentions "trailing" parameter
packs, which doesn't really make sense in the context of function
templates. Will file a core issue separately.
llvm-svn: 122463
|
|
|
|
|
|
|
|
| |
the presence of a pack expansion anywhere except at the end of a
template-argument-list causes the entire template-argument-list to be
a non-deduced context.
llvm-svn: 122461
|
|
|
|
|
|
|
|
|
| |
new gcc warning that complains on self-assignments and
self-initializations. Fix one bug found by the warning, in which one
clang::OverloadCandidate constructor failed to initialize its
FunctionTemplate member.
llvm-svn: 122459
|
|
|
|
| |
llvm-svn: 122454
|
|
|
|
|
|
|
|
|
| |
single routine. Extend that routine to handle consistency
checking for template argument packs, so that we can compare the
deduced packs for template parameter packs across different pack
expansions.
llvm-svn: 122452
|
|
|
|
| |
llvm-svn: 122449
|
|
|
|
| |
llvm-svn: 122442
|
|
|
|
|
|
|
|
|
|
|
| |
pattern is a template argument, which involves repeatedly deducing
template arguments using the pattern of the pack expansion, then
bundling the resulting deductions into an argument pack.
We can now handle a variety of simple list-handling metaprograms using
variadic templates. See, e.g., the new "count" metaprogram.
llvm-svn: 122439
|
|
|
|
| |
llvm-svn: 122436
|
|
|
|
| |
llvm-svn: 122433
|
|
|
|
| |
llvm-svn: 122432
|
|
|
|
|
|
|
|
| |
temporarily
to avoid cyclic dependency between the libraries and fix the linux build.
llvm-svn: 122431
|
|
|
|
|
|
|
| |
if property-dot expression is decidedly
an rvalue. // rdar://8155806.
llvm-svn: 122430
|
|
|
|
|
|
|
|
|
|
| |
dependent template specialization type, the number of template
arguments need not match precisely. Rather than checking the number of
arguments eagerly (which does not consider argument packs), let the
deduction routine for template argument lists cope with too many/too
few arguments.
llvm-svn: 122425
|
|
|
|
| |
llvm-svn: 122424
|
|
|
|
| |
llvm-svn: 122423
|
|
|
|
|
|
| |
library, libclangGRCheckers
llvm-svn: 122422
|
|
|
|
|
|
| |
libclangGRCore
llvm-svn: 122421
|
|
|
|
| |
llvm-svn: 122420
|
|
|
|
|
|
|
|
|
|
|
|
| |
deduction. Unify all of the looping over template arguments for
deduction purposes into a single place, where argument pack expansion
occurs; this is also the hook for deducing from pack expansions, which
itself is not yet implemented.
For now, at least we can handle a basic "count" metafunction written
with variadics. See the new test for the formulation that works.
llvm-svn: 122418
|
|
|
|
|
|
| |
the location (l-value) to it.
llvm-svn: 122396
|
|
|
|
| |
llvm-svn: 122394
|
|
|
|
| |
llvm-svn: 122393
|
|
|
|
| |
llvm-svn: 122390
|
|
|
|
|
|
|
|
|
|
|
| |
This change is necessary when the variable is a const reference and we need
the l-value of the construct expr. After that, when binding the variable,
recover the lazy compound value when the variable is not a reference.
In Environment, use the value of a no-op cast expression when it has one.
Otherwise, blast-through it.
llvm-svn: 122388
|
|
|
|
|
|
| |
Previously designated anonymous fields were found via name lookup. This redesign uses the fact that an IndirectFieldDecl declaration will always follow an anonymous implicit field to remove the special case of name lookup.
llvm-svn: 122387
|
|
|
|
|
|
|
|
| |
to cope with parameter packs. This is a band-aid I will be
revisiting this section when I implement declaration matching
semantics for variadic templates.
llvm-svn: 122369
|
|
|
|
|
|
| |
expansion TypeLoc
llvm-svn: 122367
|
|
|
|
| |
llvm-svn: 122365
|
|
|
|
|
|
|
|
|
| |
conversions, make sure that the (possibly) derived type is complete
before looking for base classes.
Finishes the fix for PR8801.
llvm-svn: 122363
|
|
|
|
|
|
|
| |
declaration, also look for an instantiation of its previous
declarations. Fixes PR8801.
llvm-svn: 122361
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
inconsistent with the type that the builtin *should* have, forget
about the builtin altogether: we don't want subsequence analyses,
CodeGen, etc., to think that we have a proper builtin function.
C is protected from errors here because it allows one to use a
library builtin without having a declaration, and detects inconsistent
(re-)declarations of builtins during declaration merging. C++ was
unprotected, and therefore would crash.
Fixes PR8839.
llvm-svn: 122351
|
|
|
|
|
|
|
|
| |
take into account the region of interest. Otherwise, we may fail to
traverse some important preprocessed entity cursors.
Fixes <rdar://problem/8554072>.
llvm-svn: 122350
|
|
|
|
| |
llvm-svn: 122348
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
classes, categories, protocols, and class extensions, where the
methods and properties of these entities would be inserted into the
DeclContext in an ordering that doesn't necessarily reflect source
order. The culprits were Sema::ActOnMethodDeclaration(), which did not
perform the insertion of the just-created method declaration into
the DeclContext for these Objective-C entities, and
Sema::ActOnAtEnd(), which inserted all method declarations at the
*end* of the DeclContext.
With this fix in hand, clean up the code-completion actions for
property setters/getters that worked around this brokenness in the AST.
Fixes <rdar://problem/8062781>, where this problem manifested as poor
token-annotation information, but this would have struck again in many
other places.
llvm-svn: 122347
|
|
|
|
| |
llvm-svn: 122340
|
|
|
|
| |
llvm-svn: 122339
|
|
|
|
|
|
|
| |
information caused token-annotation to fail in funny ways. Fixes
<rdar://problem/8595386>.
llvm-svn: 122338
|
|
|
|
|
|
| |
being friends
llvm-svn: 122335
|
|
|
|
| |
llvm-svn: 122325
|
|
|
|
|
|
|
|
| |
clang_getCursorLexicalParent() to cope with class and function
templates, along with the parent of the translation unit. Fixes PR8761
and PR8766.
llvm-svn: 122324
|
|
|
|
|
|
| |
looking in is complete. Fixes PR8756.
llvm-svn: 122323
|