| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
definition parsing logic.
llvm-svn: 161593
|
|
|
|
| |
llvm-svn: 161544
|
|
|
|
|
|
|
| |
method/c-funcs defined in objc class implementation.
No intended functionality change.
llvm-svn: 161540
|
|
|
|
| |
llvm-svn: 161539
|
|
|
|
| |
llvm-svn: 161537
|
|
|
|
|
|
| |
properties/ivars. <rdar://problem/6642337>.
llvm-svn: 161534
|
|
|
|
|
|
| |
functional change intended.
llvm-svn: 161518
|
|
|
|
|
|
| |
the ASTContext BumpPtr. Also use the preferred llvm::ArrayRef interface.
llvm-svn: 161373
|
|
|
|
|
|
| |
change intended. No test case as there's no real way to test at this time.
llvm-svn: 161342
|
|
|
|
|
|
|
| |
code-completion and an Objective-C message send, based on Jordan's
feedback.
llvm-svn: 161049
|
|
|
|
|
|
|
|
| |
lambda-introducer in Objective-C++11, fall back to treating the tokens
as an Objective-C message send to provide those (more likely)
completions. Fixes <rdar://problem/11980263>.
llvm-svn: 161015
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
accurate by asking the parser whether there was an ambiguity rather than trying
to reverse-engineer it from the DeclSpec. Make the with-parameters case have
better diagnostics by using semantic information to drive the warning,
improving the diagnostics and adding a fixit.
Patch by Nikola Smiljanic. Some minor changes by me to suppress diagnostics for
declarations of the form 'T (*x)(...)', which seem to have a very high false
positive rate, and to reduce indentation in 'warnAboutAmbiguousFunction'.
llvm-svn: 160998
|
|
|
|
| |
llvm-svn: 160857
|
|
|
|
| |
llvm-svn: 160851
|
|
|
|
| |
llvm-svn: 160850
|
|
|
|
|
|
| |
is missing in method prototype. // rdar://11939584
llvm-svn: 160789
|
|
|
|
|
|
| |
unless they appear in a decl-specifier-seq.
llvm-svn: 160688
|
|
|
|
|
|
| |
has a trailing return type.
llvm-svn: 160646
|
|
|
|
| |
llvm-svn: 160622
|
|
|
|
|
|
|
|
| |
scope to -Wc++11-extensions. Move extra semicolon after member function
definition diagnostic out of -pedantic, since C++ allows a single semicolon
there. Keep it in -Wextra-semi, though, since it's still questionable.
llvm-svn: 160618
|
|
|
|
|
|
|
|
|
|
| |
decltype type.
In Microsoft mode, we emit a warning instead of an error.
This fixes a couple of errors when parsing the MSVC 11 RC headers with clang.
llvm-svn: 160613
|
|
|
|
|
|
|
|
| |
of c-functions nested in namespace in method implementations
by turning off its delayed parsing until a proper solution is
figured out. pr13418
llvm-svn: 160552
|
|
|
|
| |
llvm-svn: 160172
|
|
|
|
| |
llvm-svn: 160017
|
|
|
|
|
|
| |
and similar other keywords. // rdar://10723084
llvm-svn: 159956
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously it was possible to get an infinite-loop-on-invalid with a namespace
decl within @interface. Since 'namespace' is normally a safe place to retry
top-level parsing, we just didn't consume the token.
This adds a flag that tracks whether we have temporarily left Objective-C
scope to parse a C-like declaration, and uses that to better recover from
parse problems by stopping at possible method declarations and at @end. To
fix the original problem, we do /not/ stop at 'namespace' when in an
Objective-C @interface or @protocol context (but still do in @implementation).
llvm-svn: 159941
|
|
|
|
|
|
|
| |
for doing delayed parsing of c++ method defined in
objc class implementations.
llvm-svn: 159792
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
very simple semantic analysis that just builds the AST; minor changes for lexer
to pick up source locations I didn't think about before.
Comments AST is modelled along the ideas of HTML AST: block and inline content.
* Block content is a paragraph or a command that has a paragraph as an argument
or verbatim command.
* Inline content is placed within some block. Inline content includes plain
text, inline commands and HTML as tag soup.
llvm-svn: 159790
|
|
|
|
|
|
|
|
|
| |
of out-of-line c++ method definition which happens
to be inside an objc class implementation
until I can figure out how to do it. This is to fix
a broken project.
llvm-svn: 159772
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This required moving the ctors for IntegerLiteral and FloatingLiteral out of
line which shouldn't change anything as they are usually called through Create
methods that are already out of line.
ASTContext::Deallocate has been a nop for a long time, drop it from ASTVector
and make it independent from ASTContext.h
Pass the StorageAllocator directly to AccessedEntity so it doesn't need to
have a definition of ASTContext around.
llvm-svn: 159718
|
|
|
|
|
|
|
| |
c-function parsing when a declaration with
C++0x braced-init-list is inside an @implementation.
llvm-svn: 159693
|
|
|
|
|
|
| |
defined in class implementations.
llvm-svn: 159691
|
|
|
|
|
|
|
| |
c-function defined in objc class
implementation for now.
llvm-svn: 159690
|
|
|
|
|
|
|
| |
objective-c's fast enumeration statement,
for more work to come.
llvm-svn: 159689
|
|
|
|
|
|
|
|
| |
c-functions declared in implementation should have their
parsing delayed until the end so, they can access forward
declared private methods. // rdar://10387088
llvm-svn: 159626
|
|
|
|
|
|
| |
';'.
llvm-svn: 159549
|
|
|
|
|
|
|
| |
This behaves like the existing GNU __alignof and C++11 alignof keywords;
most of the patch is simply adding the third token spelling to various places.
llvm-svn: 159494
|
|
|
|
|
|
|
|
|
|
|
| |
In future changes we should:
* use __builtin_trap rather than derefing 'random' volatile pointers.
* avoid dumping temporary files into /tmp when running tests, instead
preferring a location that is properly cleaned up by lit.
Review by Chandler Carruth.
llvm-svn: 159469
|
|
|
|
|
|
| |
parsing. Fixes <rdar://problem/11700604>.
llvm-svn: 159380
|
|
|
|
| |
llvm-svn: 159235
|
|
|
|
|
|
| |
struct and enum forward-declarations.
llvm-svn: 159164
|
|
|
|
| |
llvm-svn: 159089
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
attributes in more places where we didn't and catching a lot more issues.
This implements nearly every aspect of C++11 attribute parsing, except for:
- Attributes are permitted on explicit instantiations inside the declarator
(but not preceding the decl-spec)
- Attributes are permitted on friend declarations of functions.
- Multiple instances of the same attribute in an attribute-list (e.g.
[[noreturn, noreturn]], not [[noreturn]] [[noreturn]] which is conforming)
are allowed.
The first two are marked as expected-FIXME in the test file and the latter
is probably a defect and is currently untested.
Thanks to Richard Smith for providing the lion's share of the testcases.
llvm-svn: 159072
|
|
|
|
|
|
|
|
|
|
| |
Heavily based on a patch from
Aaron Wishnick <aaron.s.wishnick@gmail.com>.
I'll clean up the duplicated function in CodeGen as
a follow-up, later today or tomorrow.
llvm-svn: 159060
|
|
|
|
| |
llvm-svn: 159046
|
|
|
|
|
|
|
| |
method declarations.
// rdar://11578353.
llvm-svn: 158929
|
|
|
|
|
|
|
|
|
| |
express library-level dependencies within Clang.
This is no more verbose really, and plays nicer with the rest of the
CMake facilities. It should also have no change in functionality.
llvm-svn: 158888
|
|
|
|
|
|
| |
clang::CommentHandler to have same name.
llvm-svn: 158780
|
|
|
|
|
|
|
|
|
| |
* Retain comments in the AST
* Serialize/deserialize comments
* Find comments attached to a certain Decl
* Expose raw comment text and SourceRange via libclang
llvm-svn: 158771
|
|
|
|
|
|
|
| |
caused a crash in an obscure case. On the plus side, it caused me to catch
another bug by inspection.
llvm-svn: 158767
|