Fariborz Jahanian
4f8a57112f
Settled rule on warning on unimplemented property in
...
category implementation when some implementations
are missing in the primary class implementation.
(fixes radar 6505200).
llvm-svn: 94014
2010-01-20 19:36:21 +00:00
Chris Lattner
6a89c50e23
reduce redundant are's
...
llvm-svn: 94009
2010-01-20 17:53:58 +00:00
Fariborz Jahanian
b36606aa71
Improve performance of warning when not implementing a required
...
property of a protocol (my previous patch). No change in functionality.
(radar 7544809).
llvm-svn: 94005
2010-01-20 17:27:59 +00:00
Benjamin Kramer
9c22cc800f
Make some helper functions static.
...
llvm-svn: 94004
2010-01-20 16:21:40 +00:00
Benjamin Kramer
c1a62aa67d
Don't store a Twine temporary, it's unsafe.
...
llvm-svn: 94003
2010-01-20 16:18:11 +00:00
Duncan Sands
37fe3ee2e2
Fix html glitch. Pointed out by clwi (PR6090).
...
llvm-svn: 94000
2010-01-20 12:40:56 +00:00
Zhongxing Xu
eb76a85af0
Correct comments.
...
llvm-svn: 93999
2010-01-20 07:57:45 +00:00
Chris Lattner
5e536d85ad
allow this test to pass, even with the recent .s printer changes.
...
Have I ever mentioned that clang regtests should not be grepping .s files??
llvm-svn: 93998
2010-01-20 07:45:09 +00:00
Chandler Carruth
4d9517c564
Fix a typo pointed about by gabor.
...
llvm-svn: 93997
2010-01-20 07:43:54 +00:00
Chandler Carruth
26b29a0892
Move the MacroBuilder utilitiy to its own header. Update references.
...
Comments and/or improvements to the documentation are welcome.
llvm-svn: 93982
2010-01-20 06:13:02 +00:00
Daniel Dunbar
415763612a
Fix an invalid Twine use spotty by abbeyj, it isn't safe to use Twine
...
temporaries (this is one reason I'm nervous about propagating their use beyond
particularly performance critical places).
llvm-svn: 93981
2010-01-20 06:09:53 +00:00
Chandler Carruth
5b6d9265ba
Actually remove the include that r93974 made unnecessary.
...
llvm-svn: 93975
2010-01-20 04:09:11 +00:00
Chandler Carruth
b0af340592
Fix a layering issue between Basic and FE by moving a utility class into Basic.
...
This isn't entirely satisfactory, as it seems an implementation detail, and
with nothing to do with TargetInfo. Suggestions on where to put this are
welcome.
llvm-svn: 93974
2010-01-20 03:59:11 +00:00
Zhongxing Xu
00c6046a81
Add a missing case for DeclContext printer.
...
llvm-svn: 93973
2010-01-20 03:21:28 +00:00
Daniel Dunbar
3f3e2cd820
Driver: Lift clang resource directory computation to the Driver object.
...
llvm-svn: 93971
2010-01-20 02:35:16 +00:00
Daniel Dunbar
e2b661c26c
clang/Darwin: Update for rename of 10.4 static runtime library.
...
llvm-svn: 93970
2010-01-20 02:35:02 +00:00
Mike Stump
06c1d87d14
Also handle CXXConstructor, CXXDestructor and CXXConversion in CFG
...
printing.
llvm-svn: 93968
2010-01-20 02:28:05 +00:00
Mike Stump
281d6d7745
Use the llvm coding convention for indentation for switch.
...
llvm-svn: 93966
2010-01-20 02:03:14 +00:00
Fariborz Jahanian
98609b3a07
Patch to implement required warnings for unimplemented
...
properties imported frfom protocol. Fixes radar 7544809.
llvm-svn: 93965
2010-01-20 01:51:55 +00:00
John McCall
1bcb2631e6
Make UnresolvedSet.h standalone.
...
llvm-svn: 93964
2010-01-20 01:36:13 +00:00
Mike Stump
845384a938
Wire up the EH context for the catch clauses to the outer EH context. WIP.
...
llvm-svn: 93963
2010-01-20 01:30:58 +00:00
Mike Stump
0bdba6cdd8
Add an exceptional edge from the try terminated block to the outer EH
...
context (try or the Exit block) when there isn't a catch (...).
Improve CFG printing for catch (...).
llvm-svn: 93962
2010-01-20 01:15:34 +00:00
Douglas Gregor
52606ff2ca
Attempt to improve CIndex Doxygen organization, although I can't actually test this locally
...
llvm-svn: 93961
2010-01-20 01:10:47 +00:00
John McCall
ad371258aa
Give UnresolvedSet the ability to store access specifiers for each declaration.
...
Change LookupResult to use UnresolvedSet. Also extract UnresolvedSet into its
own header and make it templated over an inline capacity.
llvm-svn: 93959
2010-01-20 00:46:10 +00:00
Douglas Gregor
b693f65c4d
Remove some #if 0'd code that's never going to get used.
...
llvm-svn: 93957
2010-01-20 00:34:08 +00:00
Mike Stump
06b602e540
Improve CheckFallThrough analysis in the presense of the new C++ EH
...
support. WIP.
llvm-svn: 93956
2010-01-20 00:34:04 +00:00
Douglas Gregor
9074c3fe97
Kill off clang_getDeclColumn, clang_getDeclExtent, clang_getDeclLine,
...
clang_getDeclSource, and clang_getDeclSourceFile; the cursor
equivalents are the way of the future.
llvm-svn: 93955
2010-01-20 00:26:57 +00:00
Douglas Gregor
d2fc7277be
Introduce a special cursor kind for the translation unit, to serve as
...
the root of the conceptual cursor hierarchy (just like we do with
declarations). This will be used when we get to unify
clang_loadTranslationUnit() and clang_loadDeclaration() into something
more generally useful.
llvm-svn: 93954
2010-01-20 00:23:15 +00:00
Douglas Gregor
c0943d089f
CXCursor_UnexposedDecl to the first declaration kind
...
llvm-svn: 93952
2010-01-20 00:07:45 +00:00
Chris Lattner
e87668db26
add support for Fedora 10 x86_64, there really should be a better way to handle this.
...
patch by Dmitry
llvm-svn: 93948
2010-01-19 23:30:00 +00:00
Douglas Gregor
084236fafd
Kill CXCursor_ObjCSelectorRef, CXCursor_VarRef, CXCursor_FunctionRef,
...
and CXCursor_EnumConstantRef; they've been subsumed by expression
references, which do a much nicer job.
llvm-svn: 93947
2010-01-19 23:25:01 +00:00
Douglas Gregor
8f40bbee78
Extend the CIndex API with direct support for expressions and
...
statements, moving some of the more unnatural kinds of references
(VarRef, EnumConstantRef, etc.) over to the expressions. We can now
poke at arbitrary expressions and statements with, e.g.,
clang_getCursor() and get back useful information (e.g., source
ranges).
llvm-svn: 93946
2010-01-19 23:20:36 +00:00
Mike Stump
314825bc8a
Implement goto inside of blocks.
...
llvm-svn: 93945
2010-01-19 23:08:01 +00:00
Eric Christopher
99469702a3
Update and move around comments.
...
llvm-svn: 93942
2010-01-19 22:58:35 +00:00
John McCall
5d7aa7fa0a
The type of a compound literal expression is not necessarily the same as the
...
type which was syntactically written. Fixes PR 6080.
llvm-svn: 93933
2010-01-19 22:33:45 +00:00
Douglas Gregor
7d1efeb43d
Kill the unused and unnecessary CXCursor_MemberRef, twin to the
...
now-dead CXCursor_ObjCIvarRef.
llvm-svn: 93928
2010-01-19 22:15:34 +00:00
Douglas Gregor
015026e358
Kill CXCursor_ObjCIvarRef. Such cursors could never be created, and
...
have been marked for death for a while.
llvm-svn: 93927
2010-01-19 22:11:32 +00:00
Douglas Gregor
accb183371
Introduce the notion of an "unexposed" declaration into the CIndex
...
API. This is a catch-all for any declaration known to Clang but not
specifically part of the CIndex API. We'll use the same approach with
expressions, statements, references, etc., as needed.
llvm-svn: 93924
2010-01-19 22:07:56 +00:00
Mike Stump
92244b00c7
Add CFG support for the start and end of scopes and infrastructure for
...
implicit destructor calls. WIP.
llvm-svn: 93922
2010-01-19 22:00:14 +00:00
Fariborz Jahanian
f3b9b9583e
Rewriteing of gnu extension __typeof in objective-c rewriter.
...
Fixes radar 6358225.
llvm-svn: 93917
2010-01-19 21:48:35 +00:00
Douglas Gregor
4f46e789b3
Rework the CXSourceLocation and CXSourceRange APIs. They are now
...
opaque data structures accessed through the new functions
clang_getInstantiationLocation(), clang_getRangeStart(), and
clang_getRangeEnd(). The new API permits later extensions to introduce
new functions to allow CIndex clients to walk macro instantiations, if
we ever care.
llvm-svn: 93915
2010-01-19 21:36:55 +00:00
Daniel Dunbar
3858ec4720
Don't try to build/install/clean compiler-rt stuff if it isn't in the projects directory.
...
llvm-svn: 93914
2010-01-19 21:28:04 +00:00
Daniel Dunbar
3779e1f49a
Initial cut at integrating compiler-rt (on Darwin) w/ clang build.
...
- compiler-rt should be checked out into $LLVM_SRC_ROOT/projects/compiler-rt.
- On Darwin, this will automatically build the runtime libraries clang needs
into $OBJROOT/lib/clang/<version>/darwin/...
- The mechanism can easily support other platforms, and can eventually support
multiple platforms once clang has some kind of configure process (for
specifying the desired targets).
- Feedback on the approach is welcome.
llvm-svn: 93910
2010-01-19 21:12:58 +00:00
Ted Kremenek
60983dc3ad
Tighten code and rework indentation of some if() branches (for readability). No functionality change.
...
llvm-svn: 93904
2010-01-19 20:52:05 +00:00
Ted Kremenek
1362b8bbe6
Remove extra space in uses of 'assert()'.
...
llvm-svn: 93903
2010-01-19 20:46:35 +00:00
Ted Kremenek
b27378c82f
Re-alphabetize cases in switch statement.
...
llvm-svn: 93902
2010-01-19 20:40:33 +00:00
Douglas Gregor
6b8232ff82
Eliminate cursor kinds used to express definitions. Instead, provide
...
CIndex functions that (1) map from a reference or declaration to the
corresponding definition, if available, and (2) determine whether a
given declaration cursor is also a definition. This eliminates a lot
of duplication in the cursor kinds, and maps more closely to the Clang
ASTs.
This is another API + ABI breaker with no deprecation. Yay, progress.
llvm-svn: 93893
2010-01-19 19:34:47 +00:00
Fariborz Jahanian
6d77a96111
objective-c test case for __attribute__((unused)) on method arguments.
...
llvm-svn: 93887
2010-01-19 18:39:17 +00:00
Fariborz Jahanian
c1d2fa5d48
Issue diagnostics (instead of crashing in code gen) when using
...
property dot-syntax notation to use setter/getters in objective-c.
Fixes radar 7553050.
llvm-svn: 93883
2010-01-19 17:48:02 +00:00
Benjamin Kramer
fb5f40f959
Avoid an instantiation of std::sort.
...
llvm-svn: 93882
2010-01-19 17:42:20 +00:00