ef8225444452a1486bd721f3285301fe84643b00 |
|
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for rebase to r212749. This also fixes a small issue with arm_neon.h not being generated always. Includes a cherry-pick of: r213450 - fixes mac-specific header issue r213126 - removes a default -Bsymbolic on Android Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
/external/clang/lib/Parse/ParseObjc.cpp
|
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for 3.5 rebase (r209713). Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
/external/clang/lib/Parse/ParseObjc.cpp
|
651f13cea278ec967336033dd032faef0e9fc2ec |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Updated to Clang 3.5a. Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
/external/clang/lib/Parse/ParseObjc.cpp
|
8fe2475a4b4c00475709c13d43eb9a57cce87cbc |
|
18-Nov-2013 |
Alexey Bataev <a.bataev@hotmail.com> |
Replaced bool parameters in SkipUntil function with single bit-based parameter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194994 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a924f847fcc3268ca2ce5c1bc5592a3774aeab80 |
|
25-Sep-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC: Handle the case of qualifying protocols declared in a typedef declaraton used as super class of an ObjC class. Curretnly, these protocols are dropped from the class hierarchy. Test shows that it is now included. // rdar://15051465 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191395 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a3c6246950f23d7d4cd748badaf8f05d7bc3f14a |
|
16-Jul-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
This patch removes unused parameter allProperties and converts remaining parameters in ArrayRef'ize Sema::ActOnAtEnd to ArrayRef. Patch by Robert Wilhelm. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186421 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
050315bfd0473323a68f2da99b51bbe2842f6c36 |
|
16-Jun-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
ArrayRef'ize Sema::CodeComplete* Patch by Robert Wilhelm. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184052 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
80e8ea92d6dcaa05165dcb4730485db82dcd4629 |
|
08-Jun-2013 |
Adrian Prantl <aprantl@apple.com> |
address some comments on r183474: - factor the name construction part out from constructSetterName - rename constructSetterName to the more appropriate constructSetterSelector no functionality change intended. rdar://problem/14035789 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183582 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e4bb74973cfdf0c82aca2088ccfae5e61727c846 |
|
17-May-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
Objective-C parsing. Error recovery when category implementation declaration is illegally protocol qualified. // rdar://13920026 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182136 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
df1fdfd093e4e8d07813b5d86c22bb50a82e6714 |
|
29-Apr-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
Fix a typo in a parse assert. Patch by Alex Denisov. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
51c30afe7e2eb9273dd706229f42d87524fb8660 |
|
25-Apr-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
Objective-C parsing [qoi]: Recover gracefully with good diagnostic when class implementation declaration adds protocol qualifier list. // rdar://12233858 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180228 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
0c7102f070c10a261ea40700cfbb9102f642ad72 |
|
19-Apr-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
Objective-C++: Enable passing of modern C++11 style initialized temporaries to objc++ methods. // rdar://12788429 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179818 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
0ac0ee9be071c796b0f05392b473234b884c0ae8 |
|
18-Apr-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
Objective-C parsing [qoi]: Provide good recovery when Objective-C dictionary literals has bad syntax for the separator. // rdar://10679157 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179784 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e145bfd06c7eaf0cff0f7d825d1c6244127c26df |
|
04-Apr-2013 |
Nico Weber <nicolasweber@gmx.de> |
Make the ObjC attributes diagnostics a bit more informative. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178720 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9f4f5f1ca1e1967daf64d5422717c9b1e75eeb9e |
|
03-Apr-2013 |
Nico Weber <nicolasweber@gmx.de> |
Emit a nicer diagnostic for misplaced attributes on ObjC directives. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178670 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
ab2d09b6287a5dc6fa94d78739444f46f9a78bfb |
|
28-Mar-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[Parser] Don't code-complete twice. When we are consuming the current token just to enter a new token stream, we push the current token in the back of the stream so that we get it again. Unfortunately this had the effect where if the current token is a code-completion one, we would code-complete once during consuming it and another time after the stream ended. Fix this by making sure that, in this case, ConsumeAnyToken() will consume a code-completion token without invoking code-completion. rdar://12842503 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178199 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
695031cd78fe789efbb88504372413432ae2feaa |
|
20-Mar-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
Do the error recovery for @end only. I am not sure how much we can improve for when a randon ObjC keyword is thrown into the ivar decl. block. // rdar://6854840 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177553 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4cc0cf1a54541b26b258c45cd7a3c80c9401eaad |
|
20-Mar-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
Objective-C [qoi] more gracefull recovery when '}' is missing for the ivar declarations. // rdar://6854840 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177549 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5bba867123a788085b677fb4b12f21917dec5c51 |
|
19-Mar-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
Objective-C [qoi]: Provide improved parse diagnostics when closing rbrace is missing in an ObjC class declaration. Can do beter than this, but it involves addition of overhead which will be present in correct code. // rdar://6854840 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177435 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
66874fb18afbffb8b2ca05576851a64534be3352 |
|
21-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Use None rather than Optional<T>() where possible. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175705 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
dc84cd5efdd3430efb22546b4ac656aa0540b210 |
|
20-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Include llvm::Optional in clang/Basic/LLVM.h Post-commit CR feedback from Jordan Rose regarding r175594. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175679 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3f6f51e28231f65de9c2dd150a2d757b2162cfa3 |
|
08-Feb-2013 |
Jordan Rose <jordan_rose@apple.com> |
Excise <cctype> from Clang (except clang-tblgen) in favor of CharInfo.h. Nearly all of these changes are one-to-one replacements; the few that aren't have to do with custom identifier validation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174768 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3a2b7a18a4504f39e3ded0d2b5749c5c80b8b9b5 |
|
28-Jan-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Finish semantic analysis for [[carries_dependency]] attribute. This required plumbing through a new flag to determine whether a ParmVarDecl is actually a parameter of a function declaration (as opposed to a function typedef etc, where the attribute is prohibited). Weirdly, this attribute (just like [[noreturn]]) cannot be applied to a function type, just to a function declaration (and its parameters). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
48f3cc2b2be1d32df14234904539b34e6e387e4a |
|
22-Jan-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
objectiveC (take two): don't warn when in -Wselector mode and an unimplemented selector is consumed by "respondsToSelector:". // rdar://12938616 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173179 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
f11ccc1cbb26cacac36abebe6ce9add43bf32585 |
|
21-Jan-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
objectiveC: don't warn when in -Wselector mode and an unimplemented selector is consumed by "respondsToSelector:". // rdar://12938616 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173097 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
419563768ef4929a622d7c2b066856e82901bb91 |
|
14-Jan-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Refactor to call ActOnFinishFullExpr on every full expression. Teach ActOnFinishFullExpr that some of its checks only apply to discarded-value expressions. This adds missing checks for unexpanded variadic template parameter packs to a handful of constructs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172485 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4e24f0f711e2c9fde79f19fa1c80deaab3f3b356 |
|
02-Jan-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
s/CXX0X/CXX11/g, except for __GNU_EXPERIMENTAL_CXX0X__, and update a few nearby 'C++0x' comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171372 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d32b94d4d685522d1552d3d1345ae9616d7f27ab |
|
31-Dec-2012 |
Nico Weber <nicolasweber@gmx.de> |
Remove some remnants of OwningExprResult / OwningStmtResult. These got deleted late 2010 during the Actions/Sema unification. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171269 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b707a4762fcc47c12b5f487856ba0781c9399295 |
|
14-Dec-2012 |
Nico Weber <nicolasweber@gmx.de> |
Don't require a space between the two ">" in "vector<id<protocol>>" in objc++11. C++11 allowed writing "vector<vector<int>>" without a space between the two ">". This change allows this for protocols in template lists too in -std=c++11 mode, and improves the diagnostic in c++98 mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1b257afbae854c6817f26b7d61c4fed8ff7aebad |
|
11-Dec-2012 |
Douglas Gregor <dgregor@apple.com> |
Use @import rather than @__experimental_modules_import, since the latter is rather a mess to type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169919 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
55fc873017f10f6f566b182b70f6fc22aefa3464 |
|
04-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort all of Clang's files under 'lib', and fix up the broken headers uncovered. This required manually correcting all of the incorrect main-module headers I could find, and running the new llvm/utils/sort_includes.py script over the files. I also manually added quite a few missing headers that were uncovered by shuffling the order or moving headers up to be main-module-headers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169237 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
03ebd3b4af9e4ab8e14a3f136d8a28df463f54ec |
|
18-Sep-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C: improve on warnings about misplacement of method argument names. // rdar://12263549 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164077 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
08602359845e668194d111b794b8965358babfe6 |
|
17-Sep-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C: issue warning when there is no whitespace between objc method parameter name and colon. // rdar://12263549 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164047 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e23fb90712233bdfa04387e48b54a7168e23cb3e |
|
12-Sep-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Fix a couple of Doxygen issues pointed out by -Wdocumentation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163722 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b648cf02f13ae74ec346f8d22933298f9977e4e0 |
|
12-Sep-2012 |
Ted Kremenek <kremenek@apple.com> |
Revert "objective-C: warn under a flag if missing argument" We plan on discussing this more, but we shouldn't have it in the compiler in an incomplete state. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163720 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e62b1295ec71d4f0ca05b973e88d4b4e858eb96e |
|
12-Sep-2012 |
Ted Kremenek <kremenek@apple.com> |
Revert "objective-C: warn if selector has nothing but bare" We plan on discussing this more. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163719 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
10d65cd8c8974d71ade0f926ab0578fc7dc325e9 |
|
11-Sep-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C: warn if selector has nothing but bare ':' in its name. // rdar://8366823 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163650 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
92faee71f4fa01565c1c1eab617e936a01d56276 |
|
11-Sep-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C: warn under a flag if missing argument name results in unintended selector name. // rdar://12263549 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163634 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4e28d9e2ba9ce237549b45cfd4136ec6536d1325 |
|
24-Aug-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove ASTOwningVector, it doesn't own anything and provides no value over SmallVector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162492 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3fe198bf0d6118c7b080c17c3bb28d7c84e458b9 |
|
23-Aug-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Rip out remnants of move semantic emulation and smart pointers in Sema. These were nops for quite a while and only lead to confusion. ASTMultiPtr now behaves like a proper dumb array reference. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162475 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9e5df312551bc92f0a6c908288effef2e2ed0ee7 |
|
10-Aug-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C++: dalyed parsing of ctors with member initializer list defined inside an objc class implementation. wip git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161699 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
dbd6945b7f4397f44fe6a1f1acf62ab6671e84f5 |
|
10-Aug-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C++: delay parsing of ctor with try block with member initializer list defined inside an objc implementation block. wip. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161692 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
2eb362b50f34296c39d5ec3e5e1bd6a2c9a5877e |
|
10-Aug-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C++: delayed parsing of member function with function-try-block occuring in objc's implementation block. wip. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161675 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
6940972c33891ff5d2189fbf232dcdeee0e9daf8 |
|
09-Aug-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C: refactoring of objc's delayed parsing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161620 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c9b970996b8af41754a99a9cec15a9d401962ba1 |
|
09-Aug-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C: minor refactoring in method definition parsing logic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161593 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
dcdff46dd8e6d749283fe6c43adfcfe780c1d562 |
|
09-Aug-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Minor simplification for r161534. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161544 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8c6cb462946b8be19167fad7ff21d4f9fbaebfef |
|
09-Aug-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C: refactor/simplify parsing of delayed method/c-funcs defined in objc class implementation. No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161540 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
de01b7a6b4df27555ff7b25e51c0d3df29e3a0cf |
|
09-Aug-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
PR13558: Fix typo 'compatiblity'. Thinking of the children. Apparently. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161537 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
f66a0dda541cd859a928193efba6dc5d7ba8fe54 |
|
09-Aug-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Handle deprecation diagnostics correctly for C struct fields and Objective-C properties/ivars. <rdar://problem/6642337>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161534 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d30ec7076fef736754206ac87a4f2c67251cc4d8 |
|
26-Jul-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c parsing. Don't crash when selector name is missing in method prototype. // rdar://11939584 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
6749ae1dbcc9e45ade21b05c6542a6354903ad77 |
|
09-Jul-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: provide fixit hint for @autoreleasepool and similar other keywords. // rdar://10723084 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159956 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
6c89eafc90f5c51a0bf185a993961170aee530c2 |
|
03-Jul-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: just as we have done for method definitions, c-functions declared in implementation should have their parsing delayed until the end so, they can access forward declared private methods. // rdar://10387088 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159626 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
2edf0a2520313cde900799b1eb9bd11c9c776afe |
|
23-Jun-2012 |
Sean Hunt <scshunt@csclub.uwaterloo.ca> |
Clean up a large number of C++11 attribute parse issues, including parsing 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159072 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
56242baaae6c45b24fbdd5bc56fe4ee516fa9e6b |
|
21-Jun-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: deprecated C-like parameters in Objective-C method declarations. // rdar://11578353. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158929 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
7bf33401acf506b0039222834d7259acb80f6311 |
|
16-Jun-2012 |
Kaelyn Uhrain <rikka@google.com> |
Move isCXXSimpleTypeSpecifier from Parser to Sema and tweak it for wider use. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158572 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
17d26a6c1f2cb921d0000c337b4967699dc928fd |
|
11-Jun-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup, fixing Doxygen markup. Mostly this avoids common terms such as "protocol" and "expression" being implicitly turned into links to mistakenly-generated Doxygen pages: - Escaping @ symbols when Doxygen would otherwise incorrectly interpret them; - Escaping # symbols when they're not intended as explicit Doxygen link requests, such as when discussing preprocessor directives; - In one odd case, unescaping @ in @__experimental_modules_import, because Doxygen wrote '\@' to the output in that case, causing the example in the description of ImportDecl to be wrong; and - Fixing a typo: @breif -> @brief. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158299 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
6d1de1b8663fe652903bda2927b885d1ec0f2613 |
|
29-May-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objc: position of 'fixit' was off by one. This patch fixes it. // rdar://11488351 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157646 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
18df0eba838c7609d10edcb845ca6f35698e822c |
|
22-May-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: provide a useful 'fixit' suggestion when errornously using commas to separate ObjC message arguments. // rdar://11376372 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157216 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4b0e6f1da341510c1ad83eaf4c836f3134d0156a |
|
16-May-2012 |
Richard Trieu <rtrieu@google.com> |
Move the warnings for extra semi-colons under -Wextra-semi. Also, added a warning for an extra semi-colon after function definitions. Added logic so that a block of semi-colons on a line will only get one warning instead of a warning for each semi-colon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156934 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
7d24e289bea2accaaed79c6ca3e5cdd0c204ddc1 |
|
16-May-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang/AST] Index references of protocols in "@protocol(...)" syntax. To do that, keep track of the location of the protocol id in the ObjCProtocolExpr AST node. rdar://11190837 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
edd27602f9cede4fee2c81c785b8f295c9d28752 |
|
10-May-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Don't crash when using objc boxed expression with parsing error. rdar://11426994 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156565 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1de6a6cb485fb58b4fb100282bb3cf298eedacd9 |
|
09-May-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c. Fixes a 'fixit' where location of '*' on objective-c class name was misplaced. // rdar://11311333 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156517 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9257664568bf375b7790131a84d9a4fa30a5b7e3 |
|
07-May-2012 |
John McCall <rjmccall@apple.com> |
Refactor DelayedDiagnostics so that it keeps diagnostics in separate pools owned by the RAII objects that keep pushing decl state. This gives us quite a bit more flexibility. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156289 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
eb382ec1507cf2c8c12d7443d0b67c076223aec6 |
|
19-Apr-2012 |
Patrick Beard <pcbeard@mac.com> |
Implements boxed expressions for Objective-C. <rdar://problem/10194391> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155082 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
6a91d385618ea4d28236c496f540a26877c95525 |
|
12-Apr-2012 |
Erik Verbruggen <erikjv@me.com> |
Added a flag to the parser to skip method bodies. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154584 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b2f6820773aabff3c5c9e0dbb1cbbbda0d80c41f |
|
06-Apr-2012 |
Patrick Beard <pcbeard@mac.com> |
Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. The warning this inhibits, -Wobjc-root-class, is opt-in for now. However, all clang unit tests that would trigger the warning have been updated to use -Wno-objc-root-class. <rdar://problem/7446698> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154187 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4e4d08403ca5cfd4d558fa2936215d3a4e5a528d |
|
11-Mar-2012 |
David Blaikie <dblaikie@gmail.com> |
Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST). The member variable is always "LangOpts" and the member function is always "getLangOpts". Reviewed by Chris Lattner git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152536 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
36f5cfe4df32af6c5fe01228102512996f566f9d |
|
09-Mar-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Support for raw and template forms of numeric user-defined literals, and lots of tidying up. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152392 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d78ef5b941ce2937228b010e8443f92025f9d683 |
|
08-Mar-2012 |
Douglas Gregor <dgregor@apple.com> |
Streamline BalancedDelimiterTracker, by eliminating the duplicate paren/brace/bracket tracking (the Consume* functions already did it), removing the use of ConsumeAnyToken(), and moving the hot paths inline with the error paths out-of-line. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152274 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8b8d9534f185743fb72c59d4e735794e6e0f4335 |
|
07-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Silence unused variable warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152170 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
ebcb57a8d298862c65043e88b2429591ab3c58d3 |
|
06-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
Add clang support for new Objective-C literal syntax for NSDictionary, NSArray, NSNumber, and boolean literals. This includes both Sema and Codegen support. Included is also support for new Objective-C container subscripting. My apologies for the large patch. It was very difficult to break apart. The patch introduces changes to the driver as well to cause clang to link in additional runtime support when needed to support the new language features. Docs are forthcoming to document the implementation and behavior of these features. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
99831e4677a7e2e051af636221694d60ba31fcdb |
|
06-Mar-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
User-defined literals: reject string and character UDLs in all places where the grammar requires a string-literal and not a user-defined-string-literal. The two constructs are still represented by the same TokenKind, in order to prevent a combinatorial explosion of different kinds of token. A flag on Token tracks whether a ud-suffix is present, in order to prevent clients from needing to look at the token's spelling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152098 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
32ad2ee2618745ce3da51c2ae066ed5f21157c07 |
|
01-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
Change @import to @__experimental_modules_import. We are not ready to commit to a particular syntax for modules, and don't have time to push it forward in the near future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151841 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
77bfb8b43ec3f7dee3a71f6e854b03ad29dab84f |
|
29-Feb-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: provide fixit hint when atomic property does not have matching user defined setter/getter and a warning is issued. In this case, a fixit note is displayed. // rdar://10267155 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151766 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
644af7b50bd0541468b45c197f5b637e934d48a0 |
|
23-Feb-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] Make sure that all top-level decls in a @implementation are marked as such. Previously we missed tag declarations; fixes rdar://10902015 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151283 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
625bb569df0c34feec0d52c0ec5215f21ef2e054 |
|
14-Feb-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Generalize -Wempty-body: warn when statement body is empty (closes: PR11329) * if, switch, range-based for: warn if semicolon is on the same line. * for, while: warn if semicolon is on the same line and either next statement is compound statement or next statement has more indentation. Replacing the semicolon with {} or moving the semicolon to the next line will always silence the warning. Tests from SemaCXX/if-empty-body.cpp merged into SemaCXX/warn-empty-body.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150515 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
849639d8b548519cc5a00c0c9253f0c0d525060d |
|
07-Feb-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Make parsing of objc @implementations more robust. Parsing of @implementations was based on modifying global state from the parser; the logic for late parsing of methods was spread in multiple places making it difficult to have a robust error recovery. -it was difficult to ensure that we don't neglect parsing the lexed methods. -it was difficult to setup the original objc container context for parsing the lexed methods after completing ParseObjCAtImplementationDeclaration and returning to top level context. Enhance parsing of @implementations by centralizing it in Parser::ParseObjCAtImplementationDeclaration(). ParseObjCAtImplementationDeclaration now returns only after an @implementation is fully parsed; all the data and logic for late parsing of methods is now in one place. This allows us to provide code-completion for late parsed methods with mis-matched braces. rdar://10775381 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149987 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
7530c034c0c71a64c5a9173206d9742ae847af8b |
|
17-Jan-2012 |
David Blaikie <dblaikie@gmail.com> |
Remove unreachable code in Clang. (replace with llvm_unreachable where appropriate or when GCC requires it) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148292 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
94ad28b31433058445a27db722f60402ee820bea |
|
03-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Under -fmodules, accept #public <macroname> and #private <macroname> to make a macro public (the default for headers) or private, respectively. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147455 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5948ae1021122164b22f74353bb7fe325a64f616 |
|
03-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Introduce a non-uglified syntax for module imports in Objective-C: @import identifier [. identifier]* ; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147452 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
bd9482d859a74bf2c45ef8b8aedec61c0e1c8374 |
|
01-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Eliminate ObjCForwardProtocolDecl, which is redundant now that ObjCProtocolDecl modules forward declarations properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
99ba9e3bd70671f3441fb974895f226a83ce0e66 |
|
20-Dec-2011 |
David Blaikie <dblaikie@gmail.com> |
Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146959 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
0db9f4dad563a335641f5b9d4a42504d638b6c85 |
|
17-Dec-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
In Parser::SkipUntil do not stop at '@' unconditionally. Stopping at '@' was originally intended to avoid skipping an '@' at the @interface context when doing parser recovery, but we should not stop at all '@' tokens because they may be part of expressions (e.g. in @"string", @selector(), etc.), so in most cases we will want to skip them. This commit caused 'test/Parser/method-def-in-class.m' to fail for the cases where we tried to recover from unmatched angle bracket but IMO it is not a big deal to not have good recovery from such broken code and the way we did recovery would not always work anyway (e.g. if there was '@' in an expression). The case that rdar://7029784 is about still passes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146815 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a24195aaf71cee202f92ea4bad50358f3d0b701f |
|
17-Dec-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
After late parsing an objc method, make sure there are no leftover cached tokens, because the memory associated with them is going to get released. We also don't want them to affect later parsing. (We do the same for C++ inline methods.) The underlying cause for the leftover tokens is going to be addressed in the next commit. Couldn't get a test case for the crash though. rdar://10583033. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146814 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
90ec96f3026480fa41057b05d58f338aed585f62 |
|
08-Dec-2011 |
Erik Verbruggen <erikjv@me.com> |
Fix: allow @protocol forward declarations inside @implementation-s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146147 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d64251fd56577dd5c78903454632361e094c6dc1 |
|
06-Dec-2011 |
Erik Verbruggen <erikjv@me.com> |
Extend warnings for missing '@end'. Fixes PR2709. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145928 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
2fea2242fe7e7c37df1e96316616febeaf4e29eb |
|
29-Nov-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Fix leaking of LexedMethod objects created for caching objc method definitions tokens for late parsing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145394 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
35593a9add85353532519f8eba5ec513a611aac5 |
|
16-Nov-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] Fix crash on invalid code. Fixes rdar://10451854 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144766 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4a8dfb511e8f84b2e38b7a86d8ddf05ac1e1a41b |
|
12-Oct-2011 |
Douglas Gregor <dgregor@apple.com> |
Introduce BalancedDelimiterTracker, to better track open/close delimiter pairs and detect when we exceed the implementation limit for nesting depth, from Aaron Ballman! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141782 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3a387441ae339363ee5b254658f295e97bd9e913 |
|
07-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
When using an unavailable/deprecated interface Foo inside Foo's interface/implementation don't emit unavailable errors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141334 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
11d77169555480ee0a04c6e5bc390d8fde41175d |
|
03-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Pass from the parser the locations of selector identifiers when creating objc method decls. They are not stored in the AST yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140984 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
951376242c076c3f62dd78bf672909fc011991db |
|
03-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Pass all the locations of the selector identifiers for a message expression from the parser. They are not kept in the AST yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140982 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
cdda47faab5c2c61c239491a1a091e071ed3e38e |
|
01-Oct-2011 |
John McCall <rjmccall@apple.com> |
Parse attributes written in an ObjC method parameter type as attributes on the parameter declaration. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140944 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
13d05ac08974ccb41f7da7595d769c158f58fbd6 |
|
23-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Clean up parsing the category names in interfaces slightly, using MatchRHSPunctuation appropriately and giving a useful source location for the complaint about attributes being added to a category. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140404 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b219cfc4d75f0a03630b7c4509ef791b7e97b2c8 |
|
23-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
Switch assert(0/false) llvm_unreachable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
77b6de07be9186063c12928d2e9785a5d4eecbf6 |
|
22-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
ArrayRef-ifying the fields passed to Sema::ActOnFields git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140293 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e97179c675b341927807c718be215c8d1aab8acb |
|
08-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement the Objective-C 'instancetype' type, which is an alias of 'id' that can be used (only!) via a contextual keyword as the result type of an Objective-C message send. 'instancetype' then gives the method a related result type, which we have already been inferring for a variety of methods (new, alloc, init, self, retain). Addresses <rdar://problem/9267640>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139275 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
7d100872341f233c81e1d7b72b40457e62c36862 |
|
04-Sep-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Support code-completion for C++ inline methods and ObjC buffering methods. Previously we would cut off the source file buffer at the code-completion point; this impeded code-completion inside C++ inline methods and, recently, with buffering ObjC methods. Have the code-completion inserted into the source buffer so that it can be buffered along with a method body. When we actually hit the code-completion point the cut-off lexing or parsing. Fixes rdar://10056932&8319466 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139086 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8697d308c1bdd50e5c45757ac11be701c26e9e97 |
|
01-Sep-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: this patch (re)introduces objective-c's default property synthesis. This new feature is currently placed under -fobjc-default-synthesize-properties option and is off by default pending further testing. It will become the default feature soon. // rdar://8843851 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138913 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
140ab234c23f392d5422691c5de1ee3c15026def |
|
31-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c - This patch buffers method implementations and does the Sema on their body after the entire class/category @implementation is seen. This change allows messaging of forward private methods, as well as, access to synthesized ivars of properties with foward synthesize declarations; among others. In effect, this patch removes several restrictions placed on objective-c due to in-place semantics processing of methods. This is part of // rdar://8843851. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138865 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
10af87932fe4bffad539b24d512a33a1803daeae |
|
29-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Minor clean up of objc's decl context stuff. No change in functionality. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138742 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
95ed7784a335aca53b0c6e952cf31a4cfb633360 |
|
27-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: Treat top-level objective-c declarations , such as list of forward @class decls, in a DeclGroup node. Deal with its consequence throught clang. This is in preparation for more Sema work ahead. // rdar://8843851. Feel free to reverse if it breaks something important and I am unavailable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138709 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
f09530f88ece49993f1b72271b0417574e897956 |
|
25-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Reverse r138567 until a buildbot failure is investigated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138584 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d8e987bee9d39f9131e9be319483265fd894c108 |
|
25-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objc -arse: Use DeclGroup for forward class declarations; as in @class foo, bar. More cleanup to follow. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138567 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
2f64cfe19e8bf6b6ba1660e38da8c421440457fe |
|
22-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objc refactoring - minor clean up. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138276 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9735c5e60027b26a809df19677ff16a4d13f1321 |
|
22-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objc - Simplify switing objc decl context by using a context switching object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138248 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a28948f34817476d02412fa204cae038e228c827 |
|
22-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Restore patch I reversed in r138040. Known buildbot failures are resolved. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138234 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e6f07f538fd0eddd6c087fcc01d4e4ff19129c71 |
|
19-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Revers r138040. Need to look at a few buildbot failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138049 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3dbf2f5f00cfc8b25318c119c0d39f4a49d15ebe |
|
19-Aug-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: Bring objective-c handling of decl context to modernity. Instead of passing down individual context objects from parser to sema, establish decl context in parser and have sema access current context as needed. I still need to take of Doug's comment for minor cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138040 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
07524039dce5c820f111a1b3f772b4261f004b4a |
|
27-Jul-2011 |
John McCall <rjmccall@apple.com> |
The lock operand to an @synchronized statement is also supposed to be a full-expression; make it so. In ARC, make sure we retain the lock for the entire protected block. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136271 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5f9e272e632e951b1efe824cd16acb4d96077930 |
|
23-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports them into the clang namespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135852 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
17b6399f8461c5b7e1c6f367b0a0dde49f921240 |
|
02-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce Declarator::ObjCCatchContext, this will result in correct error for 'auto' in obj-c catch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134271 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
19bd77c64937d6818c61f2aa9e6a9d51c65d0356 |
|
18-Jun-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove dead variables. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
f85e193739c953358c865005855253af4f68a497 |
|
16-Jun-2011 |
John McCall <rjmccall@apple.com> |
Automatic Reference Counting. Language-design credit goes to a lot of people, but I particularly want to single out Blaine Garst and Patrick Beard for their contributions. Compiler implementation credit goes to Argyrios, Doug, Fariborz, and myself, in no particular order. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133103 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
926df6cfabf3eaa4afc990c097fa4619b76a9b57 |
|
11-Jun-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement Objective-C Related Result Type semantics. Related result types apply Cocoa conventions to the type of message sends and property accesses to Objective-C methods that are known to always return objects whose type is the same as the type of the receiving class (or a subclass thereof), such as +alloc and -init. This tightens up static type safety for Objective-C, so that we now diagnose mistakes like this: t.m:4:10: warning: incompatible pointer types initializing 'NSSet *' with an expression of type 'NSArray *' [-Wincompatible-pointer-types] NSSet *array = [[NSArray alloc] init]; ^ ~~~~~~~~~~~~~~~~~~~~~~ /System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:72:1: note: instance method 'init' is assumed to return an instance of its receiver type ('NSArray *') - (id)init; ^ It also means that we get decent type inference when writing code in Objective-C++0x: auto array = [[NSMutableArray alloc] initWithObjects:@"one", @"two",nil]; // ^ now infers NSMutableArray* rather than id git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132868 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
45937ae10a0f70f74508165aab4f2b63e18ea747 |
|
11-Jun-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Restore 'atomic' as an attribute of objc properties. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132866 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b92003b3d8d6128be3daa0b3f40a042a08545644 |
|
08-Jun-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Remove 'atomic' as a property attribute keyword. It is not a sanctioned keyword and is assumed as default. // rdar://8790791 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132753 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
64089cece350472c04b420c497ae391443353325 |
|
23-Apr-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Fixes an instance method meta-data generation bug in ObjC NeXt runtime where method pointer registered in metadata belongs to an unrelated method. Ast part of this fix, I turned at @end missing warning (for class implementations) into an error as we can never be sure that meta-data being generated is correct. // rdar://9072317 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130019 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3b3e1a9e79703da067d23756e5624a4f487d6278 |
|
26-Mar-2011 |
Chris Lattner <sabre@nondot.org> |
fix the second part of rdar://8366474 - clang fails to parse ObjC selectors with '::', when :: isn't the first part of the selector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128344 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
7da19ea50d4161fcda40d135735bcf450cabeb50 |
|
26-Mar-2011 |
John McCall <rjmccall@apple.com> |
Fix the recovery from missing semis on @property declarations to not consume the following '@'. Conceivably, we could skip tokens until something that can validly start an @interface declaration here, but it's not clear that it matters. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128325 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
0b7e678a11ece4288dc01aebb5b17e5eef8f8d2d |
|
24-Mar-2011 |
John McCall <rjmccall@apple.com> |
Insomniac refactoring: change how the parser allocates attributes so that AttributeLists do not accumulate over the lifetime of parsing, but are instead reused. Also make the arguments array not require a separate allocation, and make availability attributes store their stuff in augmented memory, too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128209 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c05a94b7accd4035bf5d5897c434c445b22da855 |
|
24-Mar-2011 |
John McCall <rjmccall@apple.com> |
Call out ObjC parameter types as a different kind of declarator context from a normal type-spec, just for completeness. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128185 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c9977d09a2de7f7d2245973413d4caf86c736640 |
|
16-Mar-2011 |
Douglas Gregor <dgregor@apple.com> |
Make sure that we always pop a function's scope *before* we call ActOnFinishFunctionBody/ActOnBlockStmtExpr. This way, we ensure that we diagnose undefined labels before the jump-scope checker gets run, since the jump-scope checker requires (as its invariant) that all of the GotoStmts be wired up correctly. Fixes PR9495. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127738 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
90ba78c64d0c24cfbc1bf88728db9775d44d7f9f |
|
12-Mar-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Place duplicate argument declaration in in method prototypes under the -Wduplicate-method-arg and turn it off by default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127552 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b77cab97f17f946744c920629ca17271308d8ebf |
|
08-Mar-2011 |
Douglas Gregor <dgregor@apple.com> |
Clarify the context in which an Objective-C type name is being parsed by using an enumeration rather than a boolean value. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127259 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
afc4578f8e55d4377b291e2325b2e9bc2cd72e89 |
|
15-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement a special code-completion pattern for "IBAction". Fixes <rdar://problem/8767704>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125604 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
7f53253223b29d77f1e9c5c0ce93a19932761b77 |
|
09-Feb-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Fix scoping of method declarations and issue warning when same parameter name used multiple times. // rdar://8877730 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125229 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
dec0984fce504a39a7f085774fb67cfd9957be58 |
|
18-Jan-2011 |
Jeffrey Yasskin <jyasskin@google.com> |
Fix warnings found by gcc-4.6, from -Wunused-but-set-variable and -Wint-to-pointer-cast. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123719 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e6bf90aec0044342ffccd13201b8a3a31a985a4b |
|
05-Jan-2011 |
Douglas Gregor <dgregor@apple.com> |
Use Parser::ExpectAndConsume() uniformly to eat semicolons after Objective-C declarations and statements. Fixes <rdar://problem/8814576> (wrong source line for diagnostics about missing ';'), and now we actually consume the ';' at the end of a @compatibility_alias directive! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122855 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b162054ba8f5b64fe87fbc4837933ab23eebd52b |
|
04-Jan-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Rename MaybeSkipFunctionBodyForCodeCompletion -> trySkippingFunctionBodyForCodeCompletion and check isCodeCompletionEnabled() before doing the call. Suggestions by Chris. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122792 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
0fe5397b26695926a835fa99eceb7fc879b307af |
|
03-Jan-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
When in code-completion, skip obj-c method bodies for speed up. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122781 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
7f040a9d817cd1c72b565e92abff473510bf9e1d |
|
24-Dec-2010 |
John McCall <rjmccall@apple.com> |
Refactor how we collect attributes during parsing, and add slots for attributes on array and function declarators. This is pretty far from complete, and I'll revisit it later if someone doesn't beat me to it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122535 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
bdb2d5056fd675c27307b34efd371bbba6839e92 |
|
21-Dec-2010 |
Douglas Gregor <dgregor@apple.com> |
Fix a major inconsistency in the representation of Objective-C 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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122347 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
dd4430e596fac34e9ce44228a249f71e73effd4a |
|
17-Dec-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Warn when synthesizing a property which is implicitly atomic under -Wimplicit-atomic-properties flag. // rdar://8774580 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122095 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b321c0c0ba957d78475e72cebde4028fdaa00f8f |
|
17-Dec-2010 |
Chris Lattner <sabre@nondot.org> |
fix typo git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122041 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
46f936e055d763437accd1e5a1bc49e7e5dbc0a3 |
|
19-Nov-2010 |
Douglas Gregor <dgregor@apple.com> |
When parsing something that looks like an ill-formed protocol-qualifier list without a leading type (e.g., <#blah#>), don't complain about it being an archaic protocol-qualifier list unless it actually parses as one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a4ffd85a6684e42f900aad5459e58ad91bb88755 |
|
17-Nov-2010 |
Douglas Gregor <dgregor@apple.com> |
For an Objective-C @synthesize statement, e.g., @synthesize foo = _foo; keep track of the location of the ivar ("_foo"). Teach libclang to visit the ivar as a member reference. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119447 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8113ecfa4e41e2c888b1794389dfe3bce6386493 |
|
10-Nov-2010 |
Ted Kremenek <kremenek@apple.com> |
Region-allocate all AttributeList objects from a factory object instead of manually managing them using new/delete and OwningPtrs. After memory profiling Clang, I witnessed periodic leaks of these objects; digging deeper into the code, it was clear that our management of these objects was a mess. The ownership rules were murky at best, and not always followed. Worse, there are plenty of error paths where we could screw up. This patch introduces AttributeList::Factory, which is a factory class that creates AttributeList objects and then blows them away all at once. While conceptually simple, most of the changes in this patch just have to do with migrating over to the new interface. Most of the changes have resulted in some nice simplifications. This new strategy currently holds on to all AttributeList objects during the lifetime of the Parser object. This is easily tunable. If we desire to have more bound the lifetime of AttributeList objects more precisely, we can have the AttributeList::Factory object (in Parser) push/pop its underlying allocator as we enter/leave key methods in the Parser. This means that we get simple memory management while still having the ability to finely control memory use if necessary. Note that because AttributeList objects are now BumpPtrAllocated, we may reduce malloc() traffic in many large files with attributes. This fixes the leak reported in: <rdar://problem/8650003> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118675 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
df81c2c6ce37f4ae3c45dd01093b6274fa0b6692 |
|
09-Nov-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Issues good diagnostic when @end is missing. // rdar://8283484 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118629 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
46d545e355a4fea2a201652c3c8bbf22a13187a6 |
|
02-Nov-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Diagnose a coherant message when @interface does not terminate with @end. // rdar: //7824372 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117991 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9bd1d8d174a9d15ae343246c8322299248b9e92a |
|
22-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
Teach the C++ simple-type-specifier parser and tentative parses about protocol-qualified types such as id<Protocol>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117081 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9c4bb2c08989265411925a04252fd4f93c26e3b1 |
|
12-Oct-2010 |
Cameron Esfahani <dirty@apple.com> |
Fix spelling error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116283 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
42499be29b620d2eae34beb0f4d0f9da5a9584da |
|
02-Oct-2010 |
Anders Carlsson <andersca@mac.com> |
Use ParseObjCSelectorPiece for parsing getter and setter names in @property declarations. Fixes PR8169. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
70c5ac70ace21b011dc2d4001bae26cdcf62ff8d |
|
21-Sep-2010 |
Douglas Gregor <dgregor@apple.com> |
Refactor code completion for expressions that occur as arguments in Objective-C message sends. There is no functionality change here; this is prep work for using the parameter types to help guide the expression results when code-completing the argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9497a73ad0d54859edbf48beb93ebb19a7ae50c9 |
|
16-Sep-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement automatic bracket insertion for Objective-C class message sends. These are far trickier than instance messages, because we typically have something like NSArray alloc] where it appears to be a declaration of a variable named "alloc" up until we see the ']' (or a ':'), and at that point we can't backtrace. So, we use a combination of syntactic and semantic disambiguation to treat this as a message send only when the type is an Objective-C type and it has the syntax of a class message send (which would otherwise be ill-formed). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114057 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
304b752a450c0fc5968c20ba25446d0bb7c6f68d |
|
15-Sep-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Initialize TypeOrExpr to NULL to silence a false-positive uninitialized warning from certain GCC's. Patch by Neil Vachharajani! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113995 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
0fbda68b50ce17d7ad36ef7a5ed77518a5cd272e |
|
15-Sep-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement bracket insertion for Objective-C instance message sends as part of parser recovery. For example, given: a method1:arg]; we detect after parsing the expression "a" that we have the start of a message send expression. We pretend we've seen a '[' prior to the a, then parse the remainder as a message send. We'll then give a diagnostic+fix-it such as: fixit-objc-message.m:17:3: error: missing '[' at start of message send expression a method1:arg]; ^ [ The algorithm here is very simple, and always assumes that the open bracket goes at the beginning of the message send. It also only works for non-super instance message sends at this time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113968 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9ba23b4ceacd77cd264501690a7a9e94184ef71b |
|
07-Sep-2010 |
Douglas Gregor <dgregor@apple.com> |
Improve recovery when there is a stray ']' or ')' before the ';' at the end of a statement. Fixes <rdar://problem/6896493>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113202 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3846ca29a8cc1d376a4b695194c29952dbbfb544 |
|
03-Sep-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Use std::string instead of llvm::StringRef to avoid dangling ref. Per Chris's comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112979 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
afbc68177cc11b8bfa47464b20e15d5f8fb21d4e |
|
03-Sep-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Use getSpelling to get original text of the c++ operator token. (radar 8328250). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112977 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
be74740cc246ce08d42804a684385a42eb814edb |
|
03-Sep-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Patch to allow alternative representation of c++ operators (and, or, etc.) to be used as selectors to match g++'s behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112935 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5add7541726348b9d1c8e96ac5031b87c41acff0 |
|
28-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
handle :: in selectors in objc++ mode, rdar://8366474 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112307 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
f312b1ea179f1c44371f9ee0cd0bc006f612de11 |
|
27-Aug-2010 |
John McCall <rjmccall@apple.com> |
One who seeks knowledge learns something new every day. One who seeks the Tao unlearns something new every day. Less and less remains until you arrive at non-action. When you arrive at non-action, nothing will be left undone. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112244 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
458433d2f0f5c96a9e0d21decdd44bebccf20b11 |
|
26-Aug-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement code completion for @selector expressions git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112186 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
60d7b3a319d84d688752be3870615ac0f111fb16 |
|
24-Aug-2010 |
John McCall <rjmccall@apple.com> |
OwningExprResult -> ExprResult. This patch brought to you by M-x query-replace-regexp \(Sema::\|Action::\|Parser::\|\)Owning\(Expr\|Stmt\)Result -> \2Result git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b3d8748e797c6c2f1dc01186c8eeb3b1b5fe970c |
|
24-Aug-2010 |
John McCall <rjmccall@apple.com> |
Abstract out passing around types and kill off ActionBase. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111901 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d32b0225e29fcafb2b2b2a4b1c51dcb1518af9c6 |
|
24-Aug-2010 |
Douglas Gregor <dgregor@apple.com> |
Provide code completion results for the context-sensitive Objective-C keywords "in", "out", "inout", "byref", "bycopy", and "oneway". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9ae2f076ca5ab1feb3ba95629099ec2319833701 |
|
24-Aug-2010 |
John McCall <rjmccall@apple.com> |
Kill off ExprArg (now just Expr*) and StmtArg (now just Stmt*). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111863 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d097be8f81fbf4ed96ac10bae18562dd8202666b |
|
24-Aug-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Handling remaining rule for synthesize bitfields in class extensions (nonfragile-abi2).For every class @interface and class extension @interface, if the last ivar is a bitfield of any type, then add an implicit `char :0` ivar to the end of that interface. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111857 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
2ccccb3ff40c64927817a7e1ddf1da8c188ed224 |
|
23-Aug-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a new code-completion point when we're parsing a declarator. Here, we can only see a few things (e.g., cvr-qualifiers, nested name specifiers) and we do not want to provide other non-macro completions. Previously, we would end up in recovery mode and would provide a large number of non-relevant completions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111818 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
ca0408fb49c1370430672acf2d770b7151cf71de |
|
23-Aug-2010 |
John McCall <rjmccall@apple.com> |
Sundry incremental steps towards killing off Action. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d226f65006733ed7f709c3174f22ce33391cb58f |
|
21-Aug-2010 |
John McCall <rjmccall@apple.com> |
DeclPtrTy -> Decl * git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111733 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
19510856727e0e14a3696b2a72c35163bff2a71f |
|
20-Aug-2010 |
John McCall <rjmccall@apple.com> |
Another step in the process of making the parser depend on Sema: - move DeclSpec &c into the Sema library - move ParseAST into the Parse library Reflect this change in a thousand different includes. Reflect this change in the link orders. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111667 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e6b1bb6e7fe906d164637ca33503b8fafdbc99e5 |
|
11-Aug-2010 |
Douglas Gregor <dgregor@apple.com> |
Once code completion has completed, pass a "completion context" on to the code-completion consumer. The consumer can use this information to augument, filter, or display the code-completion results. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110858 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3fe104154dd2e8ffb351142d74f308938b5c99bf |
|
22-Jul-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
atch for implementation of objective-c's -Wselector warning flag in clang. Little more to do for a PCH issue. Radar 6507158. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109129 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
40ed9a13f5b67b2941f5a9521616e57e9e31ba97 |
|
09-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Support code completion for parameter names in Objective-C method declarations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107933 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1f5537aaac1e775aff1d523f2cc59a9a3bd6c946 |
|
09-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a new code-completion point prior to an identifier in the selector of an Objective-C method declaration, e.g., given - (int)first:(int)x second:(int)y; this code completion point triggers at the location of "second". It will provide completions that fill out the method declaration for any known method, anywhere in the translation unit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107929 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
23c94dbb6631fecdb55ba401aa93722803d980c6 |
|
02-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Move the "current scope" state from the Parser into Action. This allows Sema some limited access to the current scope, which we only use in one way: when Sema is performing some kind of declaration that is not directly driven by the parser (e.g., due to template instantiatio or lazy declaration of a member), we can find the Scope associated with a DeclContext, if that DeclContext is still in the process of being parsed. Use this to make the implicit declaration of special member functions in a C++ class more "scope-less", rather than using the NULL Scope hack. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107491 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
f13ca06e57ac094ed05ea08c26a499af1ba0ce88 |
|
17-Jun-2010 |
Douglas Gregor <dgregor@apple.com> |
Make the "extra ';' inside a struct or union" diagnostic more precise. Fixes PR7336. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106170 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c59cb38810c63a806270385f79ea84e0203754ea |
|
31-May-2010 |
Chris Lattner <sabre@nondot.org> |
Minor tweaks on doug's objc recovery patch: the caller of isSimpleObjCMessageExpression checks the language, so change a dynamic check into an assert. isSimpleObjCMessageExpression is expensive, so only do it in the common case when it is likely to matter: when the [ of the postfix expr starts on a new line. This should avoid doing lookahead for every array expression. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105229 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1b730e847ded503f2e615154035c083c4f94a067 |
|
31-May-2010 |
Douglas Gregor <dgregor@apple.com> |
When we see the a '[' in a postfix expression in Objective-C, perform a simple, quick check to determine whether the expression starting with '[' can only be an Objective-C message send. If so, don't parse it as an array subscript expression. This improves recovery for, e.g., [a method1] [a method2] so that we now produce t.m:10:13: error: expected ';' after expression [a method] ^ instead of some mess about expecting ']'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105221 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8e254cfe5a6ab4202c7fcc4b64bdd1ca0fe071ac |
|
28-May-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement a code-completion hook for the receiver of an Objective-C message. This completion gives better results than just using the "expression" completion, which is effectively what happened before. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104895 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
dc8453422bec3bbf70c03920e01498d75783d122 |
|
25-May-2010 |
Douglas Gregor <dgregor@apple.com> |
Improve code completion in failure cases in two ways: 1) Suppress diagnostics as soon as we form the code-completion token, so we don't get any error/warning spew from the early end-of-file. 2) If we consume a code-completion token when we weren't expecting one, go into a code-completion recovery path that produces the best results it can based on the context that the parser is in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104585 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
17cb326cb62a59f53d92236394af40eaae4eddbd |
|
05-May-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
This patch deals with Sema Part of Setter/Getter synthesis of properties which are of C++ objects. Code Gen to follow (Radar 7468090). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103123 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5512ba538f3f6b0576623f680fa7d930fa085ccd |
|
26-Apr-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Cleanup error recovery for a missing '-'|'+' on a method declaration (radar 7822196). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102383 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4e6c0d19b7c072758922cf80525a81aeefc6e64b |
|
24-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Rework Parser-Sema interface for Objective-C @catch exception object arguments. Rather than having the parser call ActOnParamDeclarator (which is a bit of a hack), call a new ActOnObjCExceptionDecl action. We'll be moving more functionality into this handler to perform earlier checking of @catch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102222 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8f5e3dd32e443768d9dbbad7191e123e6733750c |
|
24-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Improve the AST representation of Objective-C @try/@catch/@finally statements. Instead of the @try having a single @catch, where all of the @catch's were chained (using an O(n^2) algorithm nonetheless), @try just holds an array of its @catch blocks. The resulting AST is slightly more compact (not important) and better represents the actual language semantics (good). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102221 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
6aa14d832704ae176c92d4e0f22dfb3f3d83a70a |
|
22-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement parsing for message sends in Objective-C++. Message sends in Objective-C++ have a more complex grammar than in Objective-C (surprise!), because (1) The receiver of an instance message can be a qualified name such as ::I or identity<I>::type. (2) Expressions in C++ can start with a type. The receiver grammar isn't actually ambiguous; it just takes a bit of work to parse past the type before deciding whether we have a type or expression. We do this in two places within the grammar: once for message sends and once when we're determining whether a []'d clause in an initializer list is a message send or a C99 designated initializer. This implementation of Objective-C++ message sends contains one known extension beyond GCC's implementation, which is to permit a typename-specifier as the receiver type for a class message, e.g., [typename compute_receiver_type<T>::type method]; Note that the same effect can be achieved in GCC by way of a typedef, e.g., typedef typename computed_receiver_type<T>::type Computed; [Computed method]; so this is merely a convenience. Note also that message sends still cannot involve dependent types or values. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102031 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1569f95831a8c99e9f664137bf8f40e47ee3d90f |
|
21-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Migrate the responsibility for turning the receiver name in an Objective-C class message expression into a type from the parser (which was doing so in two places) to Action::getObjCMessageKind() which, in the case of Sema, reduces the number of name lookups we need to perform. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102026 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
2725ca8eb3354975ca77ed4b88ede7b60b216b9a |
|
21-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Rework the Parser-Sema interaction for Objective-C message sends. Major changes include: - Expanded the interface from two actions (ActOnInstanceMessage, ActOnClassMessage), where ActOnClassMessage also handled sends to "super" by checking whether the identifier was "super", to three actions (ActOnInstanceMessage, ActOnClassMessage, ActOnSuperMessage). Code completion has the same changes. - The parser now resolves the type to which we are sending a class message, so ActOnClassMessage now accepts a TypeTy* (rather than an IdentifierInfo *). This opens the door to more interesting types (for Objective-C++ support). - Split ActOnInstanceMessage and ActOnClassMessage into parser action functions (with their original names) and semantic functions (BuildInstanceMessage and BuildClassMessage, respectively). At present, this split is onyl used by ActOnSuperMessage, which decides which kind of super message it has and forwards to the appropriate Build*Message. In the future, Build*Message will be used by template instantiation. - Use getObjCMessageKind() within the disambiguation of Objective-C message sends vs. array designators. Two notes about substandard bits in this patch: - There is some redundancy in the code in ParseObjCMessageExpr and ParseInitializerWithPotentialDesignator; this will be addressed shortly by centralizing the mapping from identifiers to type names for the message receiver. - There is some #if 0'd code that won't likely ever be used---it handles the use of 'super' in methods whose class does not have a superclass---but could be used to model GCC's behavior more closely. This code will die in my next check-in, but I want it in Subversion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102021 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
02418c7f0cb8bb83f1a1a1fad9bf6104efa83e0e |
|
20-Apr-2010 |
Ted Kremenek <kremenek@apple.com> |
Fix crash on invalid code where a @throw statement is not followed by a ';' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101941 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c83c6874e3bf1432d3df5e8d3530f8561ff5441f |
|
16-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Feed proper source-location information into Sema::LookupSingleResult, in case it ends up doing something that might trigger diagnostics (template instantiation, ambiguity reporting, access reporting). Noticed while working on PR6831. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101412 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
94b24db37e80a75c4088e592d4150fb12b00bfb3 |
|
14-Apr-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Fix a -pedantic spurious warning involving @dynamic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101284 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1dbca6ea983231b4cab1a8f1edda8f6e13c21f12 |
|
14-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a parsing action to distinguish between class, instance, and super message sends in Objective-C. No actual functionality change here, but it provides a hook so that Sema can typo-correct the receiver in some cases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1e46136c5222ad040fd783ca7ee6b2215f0b89d6 |
|
12-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
fix a bug I noticed by inspection, correcting two reject-valid bugs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101026 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
15faee19fdb9017dd6d08a690427b18c3b062c2d |
|
12-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
Have the parser decide whether a message to super is a variable or type, instead of having sema do it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101016 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
eb483eb3ee80300f15d6d13573d82493c2194461 |
|
11-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
fix PR6811 by not parsing 'super' as a magic expression in LookupInObjCMethod. Doing so allows all sorts of invalid code to slip through to codegen. This patch does not change the AST representation of super, though that would now be a natural thing to do since it can only be in the receiver position and in the base of a ObjCPropertyRefExpr. There are still several ugly areas handling super in the parser, but this is definitely a step in the right direction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100959 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4f4fd92c6c64ecbc65507f63ddd09211f732622c |
|
08-Apr-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Patch to implement gcc's cstyle arguments in objc methods. wip. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100734 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e8f5a1710a7738deff40e10efcd05b1bd6af184f |
|
07-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement code completion for Objective-C method declarations and definitions, e.g., after - or - (id) we'll find all of the "likely" instance methods that one would want to declare or define at this point. In the latter case, we only produce results whose return types match "id". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100587 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
0bd04596e4645ff145a046dfb3475f39674060d9 |
|
07-Apr-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Patch to not build ivar ASTs when they are ilegally declared in categories. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100577 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
05511fa6349ef0820a778f8c840d0b64e05e9aee |
|
03-Apr-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Improve diagnosing when a method type does not start with '-'|'+' when parsing. Fixes radar 7822196. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100248 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
809872eca7f6c024e2ab41ddffbbeeae807bf5dc |
|
31-Mar-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Issue better syntax error when objc's messaging ares are not separated by ':' (radar 7030268). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100040 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
849b243d4065f56742a4677d6dc8277609a151f8 |
|
31-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Reinstate my CodeModificationHint -> FixItHint renaming patch, without the C-only "optimization". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100022 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
275313cbb0847f1f117f60d144d113804d4fa42d |
|
31-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Revert r100008, which inexplicably breaks the clang-i686-darwin10 builder git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100018 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d0ebe080eee7c37e73754068b47fd90cc506e128 |
|
31-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Rename CodeModificationHint to FixItHint, since we've been using the term "fix-it" everywhere and even *I* get tired of long names sometimes. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100008 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
01f1bfc3284d5817517d35217885ea9ecb252817 |
|
22-Mar-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Fixes access rues for ivars declared in class implementations (radar 7547942). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99198 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c3d43b783dfb1a1502aa8b31ab1985cf237b1f77 |
|
16-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Don't consume tokens past the end-of-file in an @interface. Fixes <rdar://problem/7735566>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98613 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
83c481ade785a919ba21a33f9a8b1b21c1212fb3 |
|
23-Feb-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Early support for declaring ivars in class extensions. wip. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96819 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9e0493576af77dba1c48858c03e31a2897d0681e |
|
19-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Allow GNU attributes to appear in an Objective-C method declaration before the selector name (but after the return type). Among other things, this allows IBAction to be implemented with an attribute. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96623 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e0097db2848c463a534c18c235c6d3e53f2f1b87 |
|
15-Feb-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Issue a bettter diagnostics for incorrect property setter name. (radar 7647953). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96284 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1e37765c9257ef1d051f54a674eaa964bdba9693 |
|
11-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Clean up ownership of 'AttributeList' objects in Parser. Apparently we would just leak them all over the place, with no clear ownership of these objects at all. AttributeList objects would get leaked on both error and non-error paths. Note: I introduced the usage of llvm::OwningPtr<AttributeList> to manage these objects, which is particularly useful for methods with multiple return sites. In at least one method I used them even when they weren't strictly necessary because it clarified the ownership semantics and made the code easier to read. Should the excessive 'take()' and 'reset()' calls become a performance issue we can always re-evaluate. Note+1: I believe I have not introduced any double-frees, but it would be nice for someone to review this. This fixes <rdar://problem/7635046>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95847 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d219a3a462c31fc9aa0c0bcfb749e9e8e56b5e35 |
|
03-Feb-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Simplify setting of DeclContext for @catch variable (per Doug's comment). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95169 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
2f764f11f513c7b51c716fffa5d02e5de816836f |
|
03-Feb-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Fix DeclContext of an objective-c @catch variable declaration. Fixes radar 7590273. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95164 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
18df52bbb5d28ca082064d31ae7558dbdae52377 |
|
16-Jan-2010 |
Douglas Gregor <dgregor@apple.com> |
Keep track of the source locations for each protocol reference in Objective-C classes, protocol definitions, forward protocol declarations, and categories. This information isn't actually used yet; that's coming next. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c38c3e1e726630458154534227d74eda833d26a0 |
|
13-Jan-2010 |
Douglas Gregor <dgregor@apple.com> |
Code-completion for @public, @protected, @private, @package. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93361 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b6ac2451bfed36206c5cec7217372c4299f67f2b |
|
13-Jan-2010 |
Douglas Gregor <dgregor@apple.com> |
Whenever completing ordinary names for an Objective-C source, also provide completions for @ keywords. Previously, we only provided @-completions after an @ was actually typed, which is useful but probably not the common case. Also, make sure a few Objective-C 2.0 completions only show up when Objective-C 2.0 support is enabled (the default). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93354 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
782f2f52b78d8ca785110398a7f7b56b830b9ac7 |
|
07-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Change ObjCContainerDecl to contain the entire range for the '@end' piece of the declaration. The '@' and the 'end' are separate tokens, and require two SourceLocations to accurately track. This change was motivated because ObjCContainerDecl::getSourceRange() would previously not return the entire range of the declaration (the 'end' would be left off). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92891 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5ee56e95c3905d2e7bc403631b03865cdbdd8a42 |
|
16-Dec-2009 |
Anders Carlsson <andersca@mac.com> |
Check in a rudimentary FullExpr class that isn't used anywhere yet. Rename Action::FullExpr to Action::MakeFullExpr to avoid name clashes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91494 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5d8031687d086701b4dadaab3e0de1def448da9d |
|
07-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
reduce nesting. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90769 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
9a0c85e640a08174569a303db22981612f05d385 |
|
07-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Code completion for Objective-C @ keywords that are statements or expressions git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c464ae8444edb6d07ea49b7a0eae1674c0fa1bb8 |
|
07-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Code completion for Objective-C @ directives git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90756 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
29d9c1adfadf65e2d847d44bec37746844b9e0e3 |
|
06-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
remove some extraneous syntax: sourceloc implicitly converts to sourcerange. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90710 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d0014540005f2a5ab837365db6bd40f479406758 |
|
03-Dec-2009 |
John McCall <rjmccall@apple.com> |
Lift the ObjCPropertyCallback out of local scope to unbreak VS2005 builds. Make it an inner class of Parser to assuage access control. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90491 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
bbd37c62e34db3f5a95c899723484a76c71d7757 |
|
21-Nov-2009 |
Sean Hunt <rideau3@gmail.com> |
Added rudimentary C++0x attribute support. The following attributes are currently supported in C++0x attribute lists (and in GNU ones as well): - align() - semantics believed to be conformant to n3000, except for redeclarations and what entities it may apply to - final - semantics believed to be conformant to CWG issue 817's proposed wording, except for redeclarations - noreturn - semantics believed to be conformant to n3000, except for redeclarations - carries_dependency - currently ignored (this is an optimization hint) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89543 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4ad9685b3e2d5e2923c9cda7baaf7973ef0b1c62 |
|
19-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Objective-C code completion within properties after "setter = " or "getter = ", to provide suitable method names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89334 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d3c6854153fd6bc6a412a29e4491dbd0a47bdb14 |
|
19-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Improve code completion for Objective-C message sends, so that we provide completion results before each keyword argument, e.g., [foo Method:arg WithArg1:arg1 WithArg2:arg2] We now complete before "WithArg1" and before "WithArg2", in addition to completing before "Method". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89290 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a93b108e025ef2480fa867cc533e7781a40a639b |
|
19-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Rename CodeCompleteObjCProperty to something more specific. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89267 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
424b2a546dbd09cf70d43087771c7fff851ca158 |
|
18-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Code completion after @dynamic git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89265 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
322328b8a65ad2e45829eb06d245addb64037f6f |
|
18-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Code completion for Objective-C @synthesized. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89259 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b328c4251a9d2db704b3bd46ec04884dc8e56332 |
|
18-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Improve diagnostics and recovery when parsing @synthesized definitions git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89227 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
33ced0b8550f3e7169f326944731ee02e9338659 |
|
18-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Implement code completion for Objective-C category names in @interface and @implementation declarations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3b49aca913dc0c1838321b9bb2dc9a4cb4681922 |
|
18-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Code completion for Objective-C class names after @interface, @implementation, and in the declaration of the superclass of an @interface. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
083128f6b13dfa4fc615a838c49b516d901b1ac0 |
|
18-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Code completion after @property, providing the names of forward-declared properties git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89196 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
55385fe3e723cd675001e45f42d61adde6b7f075 |
|
18-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Code completion for Objective-C properly lists git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89194 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
60b01cc44855d62979f76dc4cdffa4277f321049 |
|
18-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Rename Objective-C message send completion functions to indicate that we're referring to message sends git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89164 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c09cba67d0ad01e53e0fed07322e95dd281bcfd9 |
|
18-Nov-2009 |
Ted Kremenek <kremenek@apple.com> |
Pass source locations of identifiers referenced by @class through Action::ActOnForwardClassDeclaration(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89162 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1ac7104947020a60430ba6f519cd5869af77046f |
|
17-Nov-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Fixes a typo, reported by Doug. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89107 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
63e963cdffca9530f920dbab58b9b4eecb2a582c |
|
16-Nov-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Handle case of missing '@end' in implementation context gracefully, on par with gcc, by: Issuing a warning, doing final sematinc check of its definitions and generating its meta-data. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88934 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
496e45ef3350fabc312c5a807d308c65c50af4db |
|
10-Nov-2009 |
Ted Kremenek <kremenek@apple.com> |
Add FIXIT hint for -Wsemicolon-before-method-body git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
dfcaf060d57fdb46e596e93c91dd86ed53a31ba9 |
|
10-Nov-2009 |
Ted Kremenek <kremenek@apple.com> |
Make -Wsemicolon-before-method-body opt-in (and part of -Wextra). Addresses <rdar://problem/7381735>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86731 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c4df6d2c05c647a6a5770ba0c749782b6c023a3a |
|
07-Nov-2009 |
Steve Naroff <snaroff@apple.com> |
Add basic code completion support for ObjC messages. Still a work in progress... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d3fdcb5a1bf6bd5e54e18579c054ea3c292a0e28 |
|
06-Nov-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Fix a bogus objective-c warning with -pedantic. (radar 7370882). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86291 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c2253f5ca170984fcd4f30f8823148e8cb71336b |
|
06-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
add some fixit hints. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86240 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
54abf7d4fa3123b8324c09d2a4dfb789fd818403 |
|
04-Nov-2009 |
John McCall <rjmccall@apple.com> |
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
/external/clang/lib/Parse/ParseObjc.cpp
|
bdd563ec391b0a83fc6d04b8a8ea3022aa702f74 |
|
03-Nov-2009 |
John McCall <rjmccall@apple.com> |
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
/external/clang/lib/Parse/ParseObjc.cpp
|
209a8c2fa23636f6d065d618e7078e164903f5cd |
|
20-Oct-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Issue warning if method body starts with a semicolon. Fixes <rdar://problem/7308503> clang should disallow the trailing semicolon in method definitions git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84645 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e013d685c6689ac7ae103ee88acf573422d1ed6a |
|
18-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move clients to use IdentifierInfo::getNameStart() instead of getName() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84436 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
ece8e71d12b6f4cb2dc501297afef126dab8ad74 |
|
08-Oct-2009 |
Steve Naroff <snaroff@apple.com> |
Add code completion support for ObjC property declarations/attributes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83579 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
71b0addffbdeed29cc062c962e236c34107755d6 |
|
29-Sep-2009 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Keep protocol source locations when parsing protocol references. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1eb4433ac451dc16f4133a88af2d002ac26c58ef |
|
09-Sep-2009 |
Mike Stump <mrs@apple.com> |
Remove tabs, and whitespace cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3688fc679389d67b6755e62406998f9ea84d886a |
|
24-Jun-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Fix a clang crash caused by incorrect user code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74080 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
496b5a894c5ec5425de53909f5aac3fb4771a2ec |
|
05-Jun-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Use of DeclContext for objc's ivars. No functionality change. More to follow. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72951 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
45db71d295cfda888a6187d950bba695ce21a287 |
|
21-May-2009 |
Douglas Gregor <dgregor@apple.com> |
Merge the ASTVector and ASTOwningVector templates, since they offered redundant functionality. The result (ASTOwningVector) lives in clang/Parse/Ownership.h and is used by both the parser and semantic analysis. No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72214 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
beaaccd8e2a8748f77b66e2b330fb9136937e14c |
|
21-May-2009 |
Jay Foad <jay.foad@gmail.com> |
Use v.data() instead of &v[0] when SmallVector v might be empty. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72210 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
6b1d283fe879fb11d7ce7a69feecf66e77b0eaf3 |
|
17-May-2009 |
Anders Carlsson <andersca@mac.com> |
Make ActOnExprStmt take a FullExprArg. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1c6a3cc88177c67498fccdf14cfdf09959214e41 |
|
04-May-2009 |
Ted Kremenek <kremenek@apple.com> |
Remove support for ObjCMethodDecl attributes that appear between the return type and the selector. This is inconsistent with C functions (where such attributes would be placed on the return type, not the the FunctionDecl), and is inconsistent with what people are use to seeing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70878 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b27d1174673d457e2ee7906c14a92bba35242cea |
|
30-Apr-2009 |
Ted Kremenek <kremenek@apple.com> |
Hook up Sema support for attributes on Objective-C method declarations that appear between the return type and the selector. This is a separate code path from regular attribute processing, as we only want to (a) accept only a specific set of attributes in this place and (b) want to distinguish to clients the context in which an attribute was added to an ObjCMethodDecl. Currently, the attribute 'objc_ownership_returns' is the only attribute that uses this new feature. Shortly I will add a warning for 'objc_ownership_returns' to be placed at the end of a method declaration. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70504 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
77755a57c9e85418626ac64c0d38975d5fa9aded |
|
30-Apr-2009 |
Ted Kremenek <kremenek@apple.com> |
Add parsing support in an Objective-C method declaration for attributes between the return type and selector. Haven't hooked this up to Sema yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70501 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
58fe03bc8083b92b606c31431feb361c45266cc2 |
|
12-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Fix rdar://6771034: don't warn on use of forward declared protocol in protocol list of another protocol definition. This warning is very noisy and GCC doesn't produce it so existing code doesn't expect it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68894 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e294d3fbaffcbc0cf5f16067ab31d2b2763d25e9 |
|
11-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
change the interface to ActOnMethodDeclaration to pass down argument information in a little struct instead of individually. While we're at it, add per-argument loc info and attribute info. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68871 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
2fc5c2428ecb450a3256c8316b93b8655cb76a0f |
|
11-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
rename Parser::ParseObjCSelector -> Parser::ParseObjCSelectorPiece, since it only parses one identifier out of the selector, not the whole thing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68867 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d2869925b5f10e00b13fbf3f41bbb17e4c9adbe0 |
|
08-Apr-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Fixed a problem using property syntax on a 'super' used as receiver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68631 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
93a259500186fa7270f66cb460c5f5728e5680ae |
|
08-Apr-2009 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6764172> [sema] crash on invalid. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68568 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
682bf92db408a6cbc3d37b5496a99b6ef85041ec |
|
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Push DeclGroup much farther throughout the compiler. Now the various productions (except the already broken ObjC cases like @class X,Y;) in the parser that can produce more than one Decl return a DeclGroup instead of a Decl, etc. This allows elimination of the Decl::NextDeclarator field, and exposes various clients that should look at all decls in a group, but which were only looking at one (such as the dumper, printer, etc). These have been fixed. Still TODO: 1) there are some FIXME's in the code about potentially using DeclGroup for better location info. 2) ParseObjCAtDirectives should return a DeclGroup due to @class etc. 3) I'm not sure what is going on with StmtIterator.cpp, or if it can be radically simplified now. 4) I put a truly horrible hack in ParseTemplate.cpp. I plan to bring up #3/4 on the mailing list, but don't plan to tackle #1/2 in the short term. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68002 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b28317a8e5e0e2953d1e5406d753d6c3c7f1e7d2 |
|
28-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Introduce a new OpaquePtr<N> struct type, which is a simple POD wrapper for a pointer. Its purpose in life is to be a glorified void*, but which does not implicitly convert to void* or other OpaquePtr's with a different UID. Introduce Action::DeclPtrTy which is a typedef for OpaquePtr<0>. Change the entire parser/sema interface to use DeclPtrTy instead of DeclTy*. This makes the C++ compiler enforce that these aren't convertible to other opaque types. We should also convert ExprTy, StmtTy, TypeTy, AttrTy, BaseTy, etc, but I don't plan to do that in the short term. The one outstanding known problem with this patch is that we lose the bitmangling optimization where ActionResult<DeclPtrTy> doesn't know how to bitmangle the success bit into the low bit of DeclPtrTy. I will rectify this with a subsequent patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67952 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
38e24c782c17b6058bf61d635747bbde19fb1bc7 |
|
18-Mar-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
objc: Implemented variables declared in class interface whose sema decl is at the translation unit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67249 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
2e050f11c49e385ad6d5f5d91a6045f482bbdb77 |
|
12-Mar-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Use paropery's setter attribute name as the selector for the property setter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66834 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
fdc92b7877535e6264fe43cfbdc8f01e9b224f81 |
|
10-Mar-2009 |
Steve Naroff <snaroff@apple.com> |
Simplify SelectorTable::constructSetterName() usage... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66551 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
61f72cbd037e58f12cfe90cd442373f44092f030 |
|
09-Mar-2009 |
Steve Naroff <snaroff@apple.com> |
Implement property '.' notation on Factory/Class objects. Parser changes aren't very pretty:-( This fixes <rdar://problem/6496506> Implement class setter/getter for properties. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66465 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
49f28ca787d8db7cac3c8898334f70ea55374c98 |
|
05-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
rename PrettyStackTraceDecl -> PrettyStackTraceActionsDecl. Introduce a new PrettyStackTraceDecl. Use it to add the top level LLVM IR generation stuff in Backend.cpp to stack traces. We now get crashes like: Stack dump: 0. Program arguments: clang t.c -emit-llvm 1. <eof> parser at end of file 2. t.c:1:5: LLVM IR generation of declaration 'a' Abort for IR generation crashes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66153 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
73e80f695e141fe08315c5fdefa38c95d72299bb |
|
05-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
include objc method decl contexts in stack trace of crash, e.g.: Stack dump: 0. message.m:53:13: in compound statement ('{}') 1. message.m:53:13: parsing Objective-C method 'xx' 2. clang message.m git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66121 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a6e3ac514c924879699c6b0b1201028f0091044f |
|
04-Mar-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Implemented access check for ivars accessed inside c-style functions declared inside objc @implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
7ba138abd329e591a8f6d5001f60dd7082f71b3b |
|
03-Mar-2009 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6640991> Exception handling executes wrong clause (Daniel, please verify). Also necessary to fix: <rdar://problem/6632061> [sema] non object types should not be allowed in @catch statements <rdar://problem/6252237> [sema] qualified id should be disallowed in @catch statements git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65964 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
32ce8376efb7e0d70e5f7e8fcf685130293f412b |
|
02-Mar-2009 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6636803> [sema] crash on InterfaceBuilder. Parser::ParseObjCMethodDefinition(): Make sure we don't exit the BodyScope until ActOnFinishFunctionBody() is complete. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65880 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
ebf6443a4f493233f7e8d92b3a991848c8b1c00d |
|
28-Feb-2009 |
Steve Naroff <snaroff@apple.com> |
Minor name change (move the ObjC prefix to a more appropriate place). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
809070a886684cb5b92eb0e00a6581ab1fa6b17a |
|
18-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Update Parser::ParseTypeName to return a TypeResult, which also tells us whether there was an error in trying to parse a type-name (type-id in C++). This allows propagation of errors further in the compiler, suppressing more bogus error messages. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64922 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
97cf6eb380016db868866faf27a086cd55a316d4 |
|
18-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
simplify some code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64893 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
b6d74a158a9c002e3c0fcbda8ad8d0ccbb2e5088 |
|
15-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
implement gcc/testsuite/objc.dg/method-attribute-3.m, by improving error recovery. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64609 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
7b4192c558268fd9007c671e72b4aa59d4f75daa |
|
15-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
don't pass a random english string in as a string argument to Diag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64608 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
ff975cfab9ada27df86038286d1678084aeb3428 |
|
14-Feb-2009 |
Anders Carlsson <andersca@mac.com> |
Pass the location of the start of the selector to ActOnClassMessage/ActOnInstanceMessage. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64560 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
84c431088693e216193094d1dbf327a01173f57f |
|
11-Feb-2009 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6505139> [clang on growl]: need to allow unnamed selectors as the first argument git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64320 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e21dd6ffef4585fa43cd3586ed971217d65bf56c |
|
11-Feb-2009 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6243503> [sema] @throw; accepted outside catch block. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64318 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
76ad2e85575722e8a38a2bd4648ab4304d9fcd24 |
|
05-Feb-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Put the invalid flag of OwningResult into the Action pointer. This shrinks OwningResult by one pointer. Since it is no longer larger than OwningPtr, merge the two. This leads to simpler client code and speeds up my benchmark by 2.7%. For some reason, this exposes a previously hidden bug, causing a regression in SemaCXX/condition.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63867 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
500d3297d2a21edeac4d46cbcbe21bc2352c2a28 |
|
29-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
move library-specific diagnostic headers into library private dirs. Reduce redundant #includes. Patch by Anders Johnsen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63271 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
20c6b3b85e186cd52d5d99489132d71d498159eb |
|
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Split the single monolithic DiagnosticKinds.def file into one .def file for each library. This means that adding a diagnostic to sema doesn't require all the other libraries to be rebuilt. Patch by Anders Johnsen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63111 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
f512e82f56671b695a32d019103e62a302838b7e |
|
18-Jan-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Rename move_convert to move_arg and move_res. The new names are less misleading (and shorter). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62466 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
431e90e887c21c0d0d56fc12a2d359df8d53ea66 |
|
18-Jan-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Convert ObjC statement actions to smart pointers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62465 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
573acde1db5cb3e216e3d63fee173230834093d8 |
|
18-Jan-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Diagnose that property name cannot be a bitfield git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62432 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1a0d31a3d7f14ddc6370ba912c778aece6c12cf0 |
|
12-Jan-2009 |
Douglas Gregor <dgregor@apple.com> |
Properly set the scope of non-fields declared within a struct, union, or enum to be outside that struct, union, or enum. Fixes several regressions: <rdar://problem/6487662> <rdar://problem/6487669> <rdar://problem/6487684> <rdar://problem/6487702> PR clang/3305 PR clang/3312 There is still some work to do in Objective-C++, but this requires that each of the Objective-C entities (interfaces, implementations, etc.) to be introduced into the context stack with PushDeclContext/PopDeclContext. This will be a separate fix, later. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1fd80116b49782c367ff5d5f50a8b76dd8a5d7f7 |
|
09-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Fix rdar://6480479 - [parser] infinite loop on invalid input git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61975 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
439c65892cc8629bbf541e0b8bda6b64cbcc4e6b |
|
09-Jan-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Adding support for ObjC methods which have c-style parameter list. This is work in progress. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61964 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
72de6676bd30f9081ee4166bbe07b4c270258ce6 |
|
08-Jan-2009 |
Douglas Gregor <dgregor@apple.com> |
Unify the code for defining tags in C and C++, so that we always introduce a Scope for the body of a tag. This reduces the number of semantic differences between C and C++ structs and unions, and will help with other features (e.g., anonymous unions) in C. Some important points: - Fields are now in the "member" namespace (IDNS_Member), to keep them separate from tags and ordinary names in C. See the new test in Sema/member-reference.c for an example of why this matters. In C++, ordinary and member name lookup will find members in both the ordinary and member namespace, so the difference between IDNS_Member and IDNS_Ordinary is erased by Sema::LookupDecl (but only in C++!). - We always introduce a Scope and push a DeclContext when we're defining a tag, in both C and C++. Previously, we had different actions and different Scope/CurContext behavior for enums, C structs/unions, and C++ structs/unions/classes. Now, it's one pair of actions. (Yay!) There's still some fuzziness in the handling of struct/union/enum definitions within other struct/union/enum definitions in C. We'll need to do some more cleanup to eliminate some reliance on CurContext before we can solve this issue for real. What we want is for something like this: struct X { struct T { int x; } t; }; to introduce T into translation unit scope (placing it at the appropriate point in the IdentifierResolver chain, too), but it should still have struct X as its lexical declaration context. PushOnScopeChains isn't smart enough to do that yet, though, so there's a FIXME test in nested-redef.c git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61940 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a60528cdac7deee3991c2b48af4df4f315e49e9d |
|
21-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Convert a few Stmt actions to smart pointers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61309 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
bc1c877fe28fb6a825f0b226a0a2da99e713ea03 |
|
17-Dec-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
Semantics of @protocol attributes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61114 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
798d119415323ebcd029ffe1e0fb442a4ca8adbb |
|
13-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Some utilities for using the smart pointers in Actions, especially Sema. Convert a few functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60983 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1d922960e083906a586609ac6978678147250177 |
|
13-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Convert remaining expression parsers to smart pointers. Now on to the Action connection. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60982 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
20df9b7ab9388b2a488c5b1293cd196b1e073b4e |
|
11-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Convert a big bunch of expression parsers to use smart pointers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60906 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d8c4e15138e69a51754cc259c8a592cc47950c8e |
|
11-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Convert some more expression parsers to use smart pointers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60904 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
2f7ece7c77eb17e24e8f0f4e1b7fb01aa5111f96 |
|
11-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Convert selected expression parsers to use smart pointers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
43bc2a0973ffe404fabba6f8280cd6bad2c69fcb |
|
11-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Convert the remaining statement parsers to smart pointers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60895 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
61364dddc33383e62cfe3b841dbc0f471280d95b |
|
11-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Convert a number of statement parsers to smart pointers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60888 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8935b8b49053122ddd3ab4cd59af0fe5eb9c23cf |
|
10-Dec-2008 |
Douglas Gregor <dgregor@apple.com> |
Use a scoped object to manage entry/exit from a parser scope rather than explicitly calling EnterScope/ExitScope git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60830 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
effa8d1c97b00a3f53e972b0e61d9aade5ea1c57 |
|
10-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Modify the move emulation according to the excellent design of Howard Hinnant. Makes for much nicer syntax when smart pointers are used consistently. Also, start converting internal argument passing of Parser to smart pointers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60809 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
15faa7fdfb496489dec9470aa5eb699b29ecdacc |
|
09-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Kick out the proof-of-concept ASTOwner and replace it with ASTOwningResult git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60791 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
0e9eabca263e8922bec0e2b38c8670eba9a39a1f |
|
09-Dec-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Consistently use smart pointers for stmt and expr nodes in parser local variables. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60761 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
891dca671a80c865c6def7259f170ba785e4faaa |
|
08-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
improve comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60718 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8cf0bb3c2a798ce3acacaac2d3178648cd4c65c6 |
|
26-Nov-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
Set default property attributes on each property. Implemented anonymous category (also know as continuation class) used to override main class's property attribute. This is work in propgress. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60114 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a55e52c0802cae3b7c366a05c461d3d15074c1a3 |
|
25-Nov-2008 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Use RAII objects to ensure proper destruction of expression and statement AST nodes in the parser in most cases, even on error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60057 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
69d27b9f2e1c678b6b8a199fa3f705f2b3ff5e0d |
|
20-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Daniel really really likes = instead of += :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59716 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
92e62b02226410bcad8584541b8f1ff4d35ebab9 |
|
20-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Rename IdentifierInfo::isName to ::isStr. Use a nifty trick from Sebastian to enforce that a literal string is passed in, and use this to avoid having to call strlen on it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5cb93b8bf009c4b0ae09b71ba85f54b2a7ea8022 |
|
19-Nov-2008 |
Steve Naroff <snaroff@apple.com> |
Fix <rdar://problem/6150376> [sema] crash on invalid message send. The core fix in Sema::ActOnClassMessage(). All the other changes have to do with passing down the SourceLocation for the receiver (to properly position the cursor when producing an error diagnostic). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59639 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a9500f05ba6c09bbd84d342236863833067cd816 |
|
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
remove some uses of IdentifierInfo::getName() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59606 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
edc66f3ab000f54e0e03c5840d7b54e9bf8615cb |
|
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Use smallstring instead of new[]'ing a string. This simplifies the code and speeds it up. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59604 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
da83bac90aca45d6a228b53a05b30bffeadc1cbd |
|
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
remove uses of IdentifierInfo::getName() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59603 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
ef708fd4abccf4d21b1f82ab2ab62f6ae7cc1265 |
|
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
remove the last couple obsolete forms of Parser::Diag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59510 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1ab3b96de160e4fbffec2a776e284a48a3bb543d |
|
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Change a couple of the Parser::Diag methods to return DiagnosticInfo and let the clients push whatever they want into the DiagnosticInfo instead of hard coding a few forms. Also switch various clients to use Diag(Tok, ...) instead of Diag(Tok.getLocation(), ...) as the canonical form to simplify the code a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59509 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4a76b292c9c3f60a257636e21d76b6ce1c12f8c4 |
|
22-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
some minor cleanups to ParseObjCTypeName: 1. Remove a bogus assertion, clients other than sema can return a null pointer from actions that result in ParseTypeName returning null. 2. Remove dead RParenLoc variable. 3. Simplify control flow handling error conditions. 4. On a major failure, we should skip until ')' not until '}'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57949 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
d7333c294d460ace3f0dd22159e3387643790b87 |
|
21-Oct-2008 |
Steve Naroff <snaroff@apple.com> |
Fix a crasher during error recovery in Parser::ParseObjCTypeName(). Found this while fixing another unrelated radar. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57904 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5fd80fada1eeecd279af8333a7f58b86d8df8016 |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
eliminate ObjCPropertyAttrs an corresponding enums, just use strcmp when needed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e00da7c2f47d4a3d9615c1056a8a65e459113de3 |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
rearrange some code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57816 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
156b061e4918a5e7ecd8eb317975de0e6be2688b |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
more simplifications to error recovery in ParseObjCPropertyAttribute git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57815 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8ca329c00e72f301cbaaa42229b20a2f5bc793e5 |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
move some code around to make it fall through more, no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
f6ed85533583dae18a44ddc4be6cfc4d68749e36 |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
reject properties completely in objc1 instead of emitting weird errors about property attributes being unknown. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57812 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
cd9f4b31c4fe5b77b5519cc17b4583fab912bad1 |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
More property attribute recovery improvements. Instead of this: crash.m:8:12: error: type name requires a specifier or qualifier @property (readonlyx, getter=isAwesome) int _awesome; ^ crash.m:8:29: error: expected ';' at end of declaration list @property (readonlyx, getter=isAwesome) int _awesome; ^ crash.m:8:39: error: expected identifier or '(' @property (readonlyx, getter=isAwesome) int _awesome; ^ we now get: crash.m:8:12: error: unknown property attribute 'readonlyx' @property (readonlyx, getter=isAwesome) int _awesome; ^ Also, we can eliminate isObjCPropertyAttribute now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57811 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
dd5b5f2bb73d037745940431b71eb98393d12d4f |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
significantly simplify and clean up error recovery in ParseObjCPropertyAttribute. Before, on this code (where a comma was forgotten): @property (readonly getter=isAwesome) int _awesome; we emitted: crash.m:9:11: error: expected ')' @property (readonly getter=isAwesome) int _awesome; ^ crash.m:9:37: error: type name requires a specifier or qualifier @property (readonly getter=isAwesome) int _awesome; ^ crash.m:9:37: error: expected identifier or '(' crash.m:9:37: error: expected ';' at end of declaration list crash.m:9:1: error: @property requires fields to be named @property (readonly getter=isAwesome) int _awesome; ^ now we emit: crash.m:9:21: error: expected ')' @property (readonly getter=isAwesome) int _awesome; ^ crash.m:9:11: error: to match this '(' @property (readonly getter=isAwesome) int _awesome; ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57809 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
da3253d8a97981257185c89ced71ce137278b121 |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
fix a crash on unnamed properties like: @property (readonly) int : 4; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a1fed7e3beebf9bb1bc85123f283be3eb631c120 |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
simplify some code by using ExpectAndConsume. When an error occurs, skip to an @ or ; instead of to a } or ;. Properties don't necessarily live in {}'s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57804 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
bc662afa1cb9b61cb1e7808bb1463dd6291b8095 |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
refactor a bunch of code: Check for @end in ParseObjCInterfaceDeclList instead of in each caller Handle @required and @optional with the same code Add some fixmes about some apparently objc2 code that is being accepted in objc1. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57803 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a2449b2bf739545494241e189b59587d5ca5c2c1 |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
fix some minor error recovery bugs in ParseObjCInterfaceDeclList where it would reject @required in non-protocols, but then go ahead and tag methods with required anyway. Instead, if we see this in something other than a protocol, just ignore the request. Also, improve error recovery a bit when we see something bogus inside an interface. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57798 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e82a10fbba9e33b253119c7c1e0a9801caef486d |
|
20-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
restructure the body of the ParseObjCInterfaceDeclList loop to make it easier to understand. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57797 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1bfe1c2129771c06fb58ae5e8c079ae30e138309 |
|
03-Oct-2008 |
Daniel Dunbar <daniel@zuster.org> |
Pass postfix attributes to ActOnFields. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56992 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3527b59f246cde170e6877e3e62f78a95dbcdfce |
|
26-Sep-2008 |
Ted Kremenek <kremenek@apple.com> |
Enter a new scope for a @try block. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56668 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
246e70f69cb8aeb67225c54690f1c6b25abd5a86 |
|
26-Sep-2008 |
Daniel Dunbar <daniel@zuster.org> |
Parser support for prefix __attribute__ on @protocol. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56642 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
aefc36656d3113ef32a50cea9ae0621e07c8b26c |
|
26-Sep-2008 |
Ted Kremenek <kremenek@apple.com> |
Have @finally introduce a new scope. Fixes: <rdar://problem/6248119> @finally doesn't introduce a new scope git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56629 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
69d349a8743f156b965141cda80520bddda84601 |
|
19-Sep-2008 |
Chris Lattner <sabre@nondot.org> |
Fix rdar://6222856: the receiver of a message expr is an arbitrary expr, not just a assign expr. The grammar comment was right, the code was just wrong. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56353 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4d7da2f4a39adcc2ea211fb30600fabde4f3a0b1 |
|
26-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Synthesize property setter method as we do for getter. - Also, fix Parser to construct proper SetterName selector (should be lifted out of parser though). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55352 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
ef048ef393960728bdc82cd5c45035bde7013b6a |
|
23-Aug-2008 |
Anders Carlsson <andersca@mac.com> |
Reserved C++ words are valid selectors in Objective-C++ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5ffb14b7e88e587cd2f78dcc3a966a64108920f0 |
|
23-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
we already have a handle on the 'in' keyword, don't bother getting two. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55217 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e8904e992ca5e821b199c4577e8b5e5b17a33b1d |
|
23-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Fix a FIXME by not creating an invalid AST on erroneous input. Also make diagnostic output in some other malformed cases significantly more useful. This fixes PR2708 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55215 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
914701ed49f31323176a784b49df05a0d177d1ad |
|
05-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Move AsmLabel into Declarator instead of just a parameter to ActOnDeclarator. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54353 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
4fef81d718ca1b91ce2adef52db91a35f86e9bbd |
|
05-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Fix rdar://6124613 a crash on invalid code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54340 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
a80f8749f2968d19595ca2544114932bf0ca2c11 |
|
05-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add more Parser/Sema support for GCC asm-label extension. - ActOnDeclarator now takes an additional parameter which is the AsmLabel if used. Its unfortunate that this bubbles up this high, but we cannot just lump it in as an attribute without mistakenly *accepting* it as an attribute. - The actual asm-label itself is, however, encoded as an AsmLabelAttr on the FunctionDecl. - Slightly improved parser error recovery on malformed asm-labels. - CodeGen support still missing... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54339 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
06036d3709955a53297b4cbe14e20db88f321470 |
|
26-Jul-2008 |
Chris Lattner <sabre@nondot.org> |
Pull protocol resolution of out ActOnStartClassInterface, this is also the last client of the old ParseObjCProtocolReferences, so it also removes it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54094 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
6bd6d0b9d8944c5e192097bef24f2becb83af172 |
|
26-Jul-2008 |
Chris Lattner <sabre@nondot.org> |
refactor protocol resolution out of ActOnStartCategoryInterface git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54093 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e13b9595dc1e2f4288bec34f3412359f648e84a5 |
|
26-Jul-2008 |
Chris Lattner <sabre@nondot.org> |
pull protocol resolution out into ActOnStartProtocolInterface. This temporarily duplicates ParseObjCProtocolReferences, but it will be removed in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54092 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3872b5cadd63649c12dd41bca786b67327618462 |
|
25-Jul-2008 |
Chris Lattner <sabre@nondot.org> |
gcc requires a semicolon at the end of an interface, unlike its extension for structs. rdar://6095245. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54044 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
394f3f483fa4e7b472630cfcd03f7840520958c5 |
|
25-Jul-2008 |
Steve Naroff <snaroff@apple.com> |
Move fix in r54013 from the parser to sema. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54032 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5928cb633d5d5e73c598d5625bf717a57e6b10a3 |
|
25-Jul-2008 |
Steve Naroff <snaroff@apple.com> |
Fix Parser::ParseObjCMethodDefinition(). Only call the actions module for valid MDecl's. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54013 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
7caeabd868d46cf4e68478c6e9136dae4e735d21 |
|
22-Jul-2008 |
Chris Lattner <sabre@nondot.org> |
minor cleanup to the actions interface to pass around SmallVectorImpl instead of a specific smallvector size. Fix protocol lists to pass down proper location info, so we get diagnostics like this: t.m:3:35: error: cannot find protocol definition for 'NSCopying', referenced by 'NSWhatever' @interface NSWhatever : NSObject <NSCopying> ^ instead of this: t.m:3:44: error: cannot find protocol definition for 'NSCopying', referenced by 'NSWhatever' @interface NSWhatever : NSObject <NSCopying> ^ Add a new IdentifierLocPair typedef which is just a pair<IdentifierInfo*, SourceLocation> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53883 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8a779314870760848e61da2c428a78971fe3f1c3 |
|
06-Jun-2008 |
Ted Kremenek <kremenek@apple.com> |
Initial work on additional memory collection for ObjC AST objects. We now have Destroy methods of ObjcMethodDecl and ObjCInterfaceDecl which recursively destroy their owned Decls and Stmts. There are a few cases where it is not clear what to do (FIXMEs included in the patch). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52050 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
3ac438c383a4a9a73c76a05c76ec5d02f10a3c52 |
|
04-Jun-2008 |
Steve Naroff <snaroff@apple.com> |
Parser::ParseObjCSynchronizedStmt() needs to Enter/Exit a decl scope. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51963 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
459a1e2212115f4ff89db7f444df5af41792b18a |
|
03-Jun-2008 |
Steve Naroff <snaroff@apple.com> |
Fix parser bug/FIXME with @catch. <rdar://problem/5980846> clang on xcode: error: declarator requires an identifier (for @catch) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51895 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
8442b5cdb76cef3ad88e32d41750914c7b77f588 |
|
23-May-2008 |
Steve Naroff <snaroff@apple.com> |
Make sure the source location for @property points the the @-sign (not the decl spec). Also added a FIXME related to how we represent @properties in the ObjCInterfaceDecl AST. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
33de3f0333ca0b5274291b8d76c86758c0484691 |
|
07-May-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
This patch introduces declaration of getter methods for ObjC2's properties. Couple of property tests will fail with this patch. Will fix them next. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50818 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
5251e130a23d997f7c0dfdc250cdc41f179e5bed |
|
06-May-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
Patch to refactor setter/getter names of property attributes into Selector (was IdentifierInfo * before). This will make method declartations whole lot easier. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
46b55e56d029aec699fc2701e43d70264da9ecd8 |
|
05-May-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
percolate @optional/@required protocols down to ASTs for properties declared in the protocol. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50662 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
aa847fe3c88ee5e8d180e48537c58b805d48d95d |
|
30-Apr-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
Default visbility for instance variables is protected. Patch by Emerson Murhpy-Hill. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50452 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c35b9e4e2efad727538c848cf30d4b0eb1031dc9 |
|
21-Apr-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
Support for @dynamic AST build. More property semantics checking. First test case for ObjC2's property implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50057 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
f624f8186d8fe474350051c6d3f00b2c204fbeae |
|
18-Apr-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
Initial work for property implementation declarations. Mostly semantic checking in this patch. This is on going and incomplete. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49882 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1de1e74541c25c1a7b721f1c3991ea34c8403420 |
|
15-Apr-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
New AST representation for each objc2's property declaration. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49699 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
dae1a1a2aa4f245b1958dc8db6089f24c575ef13 |
|
12-Apr-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
AST generation for objc2's property declarations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49565 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
45bc03f9202d5649fd41f35b98d34bb34823d0f3 |
|
11-Apr-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
Minor changes per Chris L's review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49539 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
1d78cc443084134428c4c333fab25148900c3ca4 |
|
11-Apr-2008 |
Fariborz Jahanian <fjahanian@apple.com> |
Patch for: 1) objc ivar processing is split out of ActOnField into its own ActOnIvar method. 2) the new objc ivar action takes visibility info directly, eliminating AllVisibilities in ParseObjCClassInstanceVariables. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49506 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
e13594279a952537ac903325efff57e3edca79d9 |
|
10-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
refactor Parser::ParseStructDeclaration to return a vector of uninterpreted declarators. This allows the clients (C structs, objc classes, objc properties, [future] C++ classes) etc, to do custom processing before invoking an action. This has two benefits in the short term: 1) objc ivar processing should be split out of ActOnField into its own ActOn method. 2) the new objc ivar action can take visibility info directly, eliminating AllVisibilities in ParseObjCClassInstanceVariables. 3) objc properties can pass their own special sauce down to sema as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49468 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
88cb27a160adc305783a44f922ee4b216006ebf9 |
|
07-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
move sorting of qualifying protocols from the parser into sema. This allows clients of the parser to have the unmolested list if desired, and guarantees that noone can create an ObjCQualifiedInterfaceType with an unsorted list. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49310 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
f4af5154571e0c5eadb19df10e65464766ef6683 |
|
17-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
clean up property memory allocation to move it into the ast classes like the rest of the classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48434 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
c858105d41602a2dadb2efbc1af80a7b791ebac3 |
|
16-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
minor cleanups, make getNumInstanceMethods always return unsigned. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48423 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|
bda0b626e74513950405c27525af87e214e605e2 |
|
16-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
Make a major restructuring of the clang tree: introduce a top-level lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48402 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/Parse/ParseObjc.cpp
|