| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
It still depends on Type because DeclarationName.h does.
llvm-svn: 112177
|
|
|
|
|
|
|
| |
Clients of Sema don't need to know (for example) the list of diagnostics we
support.
llvm-svn: 112093
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now all classes derived from Attr are generated from TableGen.
Additionally, Attr* is no longer its own linked list; SmallVectors or
Attr* are used. The accompanying LLVM commit contains the updates to
TableGen necessary for this.
Some other notes about newly-generated attribute classes:
- The constructor arguments are a SourceLocation and a Context&,
followed by the attributes arguments in the order that they were
defined in Attr.td
- Every argument in Attr.td has an appropriate accessor named getFoo,
and there are sometimes a few extra ones (such as to get the length
of a variadic argument).
Additionally, specific_attr_iterator has been introduced, which will
iterate over an AttrVec, but only over attributes of a certain type. It
can be accessed through either Decl::specific_attr_begin/end or
the global functions of the same name.
llvm-svn: 111455
|
|
|
|
| |
llvm-svn: 110945
|
|
|
|
| |
llvm-svn: 110315
|
|
|
|
|
|
| |
since we aren't going to be calling them ever.
llvm-svn: 109377
|
|
|
|
|
|
| |
is well defined, it resets to the default alignment.
llvm-svn: 108508
|
|
|
|
|
|
| |
align=native, at least for the platforms we support.
llvm-svn: 105000
|
|
|
|
|
|
|
| |
what we used to be doing, and makes sure that paired '#pragma options
align=reset' won't fail.
llvm-svn: 104998
|
|
|
|
|
|
| |
noted, is not the same as __attribute__((packed)). That would be ridiculous!
llvm-svn: 104865
|
|
|
|
| |
llvm-svn: 104864
|
|
|
|
|
|
|
| |
- Docs are fairly sketchy, if someone wants to pore through gcc to look for
holes I'd appreciate any failing test cases!
llvm-svn: 104809
|
|
|
|
| |
llvm-svn: 104799
|
|
|
|
|
|
| |
exposes less details.
llvm-svn: 104797
|
|
|
|
| |
llvm-svn: 104789
|
|
|
|
|
|
| |
shares the stack with '#pragma pack', who knew!?
llvm-svn: 104786
|
|
|
|
|
|
| |
expressions in attributes, pragmas.
llvm-svn: 104083
|
|
|
|
|
|
|
| |
LookupResult::getAsSingleDecl() is no more. Shift Sema::LookupSingleName to
return null on overloaded results.
llvm-svn: 90309
|
|
|
|
| |
llvm-svn: 89199
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LookupResult RAII powers to diagnose ambiguity in the results. Other diagnostics
(e.g. access control and deprecation) will be moved to automatically trigger
during lookup as part of this same mechanism.
This abstraction makes it much easier to encapsulate aliasing declarations
(e.g. using declarations) inside the lookup system: eventually, lookup will
just produce the aliases in the LookupResult, and the standard access methods
will naturally strip the aliases off.
llvm-svn: 89027
|
|
|
|
|
|
|
|
|
| |
users to
pass a LookupResult reference to lookup routines. Call out uses which assume a single
result.
llvm-svn: 83674
|
|
|
|
| |
llvm-svn: 81346
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
implementation of '#pragma unused' by not constructing intermediate
DeclRefExprs, but instead do the name lookup directly. The
implementation is greatly simplified.
Along the way, degrade '#pragma unused(undeclaredvariable)' to a
warning instead of being a hard error. This implements:
<rdar://problem/6761874> [sema] allow #pragma unused to reference undefined variable (with warning)
llvm-svn: 78019
|
|
|
|
|
|
|
|
|
| |
The implementations of these methods can Use Decl::getASTContext() to get the ASTContext.
This commit touches a lot of files since call sites for these methods are everywhere.
I used pre-tokenized "carbon.h" and "cocoa.h" headers to do some timings, and there was no real time difference between before the commit and after it.
llvm-svn: 74501
|
|
|
|
| |
llvm-svn: 73702
|
|
|
|
| |
llvm-svn: 67573
|
|
|
|
| |
llvm-svn: 67569
|
|
|
|
|
|
|
| |
really use pack() instead.
- <rdar://problem/6650243> clang warns about '#pragma pack(0)'
llvm-svn: 66287
|
|
|
|
|
|
| |
instance in Sema be a pimpl.
llvm-svn: 64718
|
|
file.
llvm-svn: 64711
|