]> granicus.if.org Git - clang/log
clang
14 years agoDriver: Switch to using TableGen'erated Options.inc instead of Options.def file.
Daniel Dunbar [Thu, 19 Nov 2009 01:03:50 +0000 (01:03 +0000)]
Driver: Switch to using TableGen'erated Options.inc instead of Options.def file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89288 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRefine linkage on thunks. WIP.
Mike Stump [Thu, 19 Nov 2009 00:49:05 +0000 (00:49 +0000)]
Refine linkage on thunks.  WIP.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89287 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse TOOLALIAS so that clang++ gets 'built'.
Daniel Dunbar [Thu, 19 Nov 2009 00:21:33 +0000 (00:21 +0000)]
Use TOOLALIAS so that clang++ gets 'built'.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89286 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDriver: Split OptTable out into OptTable.{h,cpp}
Daniel Dunbar [Thu, 19 Nov 2009 00:15:11 +0000 (00:15 +0000)]
Driver: Split OptTable out into OptTable.{h,cpp}

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89283 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImprove the accuracy of code completion for the attributes of an @property declaratio...
Douglas Gregor [Thu, 19 Nov 2009 00:14:45 +0000 (00:14 +0000)]
Improve the accuracy of code completion for the attributes of an @property declaration, so that we don't produce completions for attributes that would conflict with already-specified attributes

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89281 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImprove code-completion results for the flags in an @property
Douglas Gregor [Thu, 19 Nov 2009 00:01:57 +0000 (00:01 +0000)]
Improve code-completion results for the flags in an @property
declaration by providing patterns for "getter = <method>" and "setter
= <method>". As part of this, invented a new "pattern" result kind
that is merely a semantic string. The "pattern" result kind should
help with other kinds of code templates.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89277 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDo not enter forward class 'Protocol' in decl context.
Fariborz Jahanian [Wed, 18 Nov 2009 23:15:37 +0000 (23:15 +0000)]
Do not enter forward class 'Protocol' in decl context.
Will do it later. Fixes pr5552.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89269 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDo overload resolution for compound assignment even if only the RHS is overloadable...
Sebastian Redl [Wed, 18 Nov 2009 23:10:33 +0000 (23:10 +0000)]
Do overload resolution for compound assignment even if only the RHS is overloadable. Compound assignment may be overloaded as a non-member, and anyway the overload resolution is necessary because it triggers implicit (used-defined) conversions. Fixes PR5512, but not really the deeper issues lurking. Those are standard defects.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89268 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRename CodeCompleteObjCProperty to something more specific. No functionality change.
Douglas Gregor [Wed, 18 Nov 2009 23:08:07 +0000 (23:08 +0000)]
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

14 years agoResolve this FIXME: unelaborated lookups are ambiguous, too.
John McCall [Wed, 18 Nov 2009 23:05:13 +0000 (23:05 +0000)]
Resolve this FIXME:  unelaborated lookups are ambiguous, too.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89266 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCode completion after @dynamic
Douglas Gregor [Wed, 18 Nov 2009 22:56:13 +0000 (22:56 +0000)]
Code completion after @dynamic

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89265 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoOverhaul previous-declaration and overload checking to work on lookup results
John McCall [Wed, 18 Nov 2009 22:49:29 +0000 (22:49 +0000)]
Overhaul previous-declaration and overload checking to work on lookup results
rather than NamedDecl*.  This is a major step towards eliminating
OverloadedFunctionDecl.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89263 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTest case for parsing-recovery change to @synthesized
Douglas Gregor [Wed, 18 Nov 2009 22:37:38 +0000 (22:37 +0000)]
Test case for parsing-recovery change to @synthesized

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89260 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCode completion for Objective-C @synthesized.
Douglas Gregor [Wed, 18 Nov 2009 22:32:06 +0000 (22:32 +0000)]
Code completion for Objective-C @synthesized.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89259 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoignore parens surounding the type when diagnosing
Fariborz Jahanian [Wed, 18 Nov 2009 22:16:17 +0000 (22:16 +0000)]
ignore parens surounding the type when diagnosing
pointer-to-member cast types used in expressions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89255 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoThis patch fixes a bug in misdiagnosing correct
Fariborz Jahanian [Wed, 18 Nov 2009 21:54:48 +0000 (21:54 +0000)]
This patch fixes a bug in misdiagnosing correct
use of pointer to data member.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89251 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTrack overriding methods when instantiating a template class. Fixes PR5550.
Sebastian Redl [Wed, 18 Nov 2009 21:51:29 +0000 (21:51 +0000)]
Track overriding methods when instantiating a template class. Fixes PR5550.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89248 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake MSVC happy.
Daniel Dunbar [Wed, 18 Nov 2009 21:42:57 +0000 (21:42 +0000)]
Make MSVC happy.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89247 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPretend destructors are const and volatile. This allows calling them with const and...
Sebastian Redl [Wed, 18 Nov 2009 20:55:52 +0000 (20:55 +0000)]
Pretend destructors are const and volatile. This allows calling them with const and/or volatile objects. Fixes PR5548.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89244 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDon't generate superfluous and ambiguous built-in candidates for multi-level array...
Sebastian Redl [Wed, 18 Nov 2009 20:39:26 +0000 (20:39 +0000)]
Don't generate superfluous and ambiguous built-in candidates for multi-level array subscript and arithmetic. Fixes PR5546.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89242 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoConstruct INTPTR_MIN, INTPTR_MAX, and UINTPTR_MAX from the exact-width limit
Ken Dyck [Wed, 18 Nov 2009 20:36:29 +0000 (20:36 +0000)]
Construct INTPTR_MIN, INTPTR_MAX, and UINTPTR_MAX from the exact-width limit
macros corresponding to __INTPTR_WIDTH__.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89239 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDefine intptr_t and uintptr_t in terms of their equivalent exact-width types.
Ken Dyck [Wed, 18 Nov 2009 20:24:13 +0000 (20:24 +0000)]
Define intptr_t and uintptr_t in terms of their equivalent exact-width types.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89237 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate test to stop scanning things in the predefines buffer, this isn't adding
Daniel Dunbar [Wed, 18 Nov 2009 20:19:44 +0000 (20:19 +0000)]
Update test to stop scanning things in the predefines buffer, this isn't adding
value.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89235 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDriver: Rework OptTable to have no dependency on the options it manages.
Daniel Dunbar [Wed, 18 Nov 2009 20:19:36 +0000 (20:19 +0000)]
Driver: Rework OptTable to have no dependency on the options it manages.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89234 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDriver: Make local type name more distinct.
Daniel Dunbar [Wed, 18 Nov 2009 20:19:26 +0000 (20:19 +0000)]
Driver: Make local type name more distinct.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89233 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDriver: Store Option ID field as unsigned to drop dependency on the options
Daniel Dunbar [Wed, 18 Nov 2009 20:19:19 +0000 (20:19 +0000)]
Driver: Store Option ID field as unsigned to drop dependency on the options
type.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89232 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPredefine __INTPTR_WIDTH__ for future use in stdint.h.
Ken Dyck [Wed, 18 Nov 2009 20:05:48 +0000 (20:05 +0000)]
Predefine __INTPTR_WIDTH__ for future use in stdint.h.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89231 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove the __INTMAX_TYPE__ and __UINTMAX_TYPE__ built-in macros as they are no
Ken Dyck [Wed, 18 Nov 2009 19:51:06 +0000 (19:51 +0000)]
Remove the __INTMAX_TYPE__ and __UINTMAX_TYPE__ built-in macros as they are no
longer used by stdint.h.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89230 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse llvm::sys::Path to check isAbsolute, instead of hard coding. Also, remove random...
Daniel Dunbar [Wed, 18 Nov 2009 19:50:41 +0000 (19:50 +0000)]
Use llvm::sys::Path to check isAbsolute, instead of hard coding. Also, remove random FIXME (?).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89229 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImprove diagnostics and recovery when parsing @synthesized definitions
Douglas Gregor [Wed, 18 Nov 2009 19:45:45 +0000 (19:45 +0000)]
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

14 years agoDefine INTMAX_C and UINTMAX_C in terms of the corresponding exact-width
Ken Dyck [Wed, 18 Nov 2009 19:42:57 +0000 (19:42 +0000)]
Define INTMAX_C and UINTMAX_C in terms of the corresponding exact-width
INTn_C and UINTn_C macros.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89226 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDefine INTMAX_MIN, INTMAX_MAX, and UINTMAX_MAX in terms of the limit macros for
Ken Dyck [Wed, 18 Nov 2009 19:22:15 +0000 (19:22 +0000)]
Define INTMAX_MIN, INTMAX_MAX, and UINTMAX_MAX in terms of the limit macros for
their corresponding exact-width type.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89224 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImplement code completion for Objective-C category names in @interface
Douglas Gregor [Wed, 18 Nov 2009 19:08:43 +0000 (19:08 +0000)]
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

14 years agoReflow to fit 80-col.
Mike Stump [Wed, 18 Nov 2009 18:57:56 +0000 (18:57 +0000)]
Reflow to fit 80-col.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89222 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDefine intmax_t and uintmax_t as the [u]intN_t type corresponding to
Ken Dyck [Wed, 18 Nov 2009 18:57:04 +0000 (18:57 +0000)]
Define intmax_t and uintmax_t as the [u]intN_t type corresponding to
__INTMAX_WIDTH__.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89221 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDon't warn if objc method param types in declaration and
Fariborz Jahanian [Wed, 18 Nov 2009 18:56:09 +0000 (18:56 +0000)]
Don't warn if objc method param types in declaration and
implementation mismatch in their qualifiers only.
This will match similar behavior in c/c++ and
fixes radar 7211653.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89220 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTrim whitespace.
Mike Stump [Wed, 18 Nov 2009 18:52:31 +0000 (18:52 +0000)]
Trim whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89219 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImprove on diagnosing type mismatches because of
Fariborz Jahanian [Wed, 18 Nov 2009 18:26:29 +0000 (18:26 +0000)]
Improve on diagnosing type mismatches because of
lack of viable convesion functions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89216 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCastsAwayConstness shouldn't care if member pointers point into different classes...
Sebastian Redl [Wed, 18 Nov 2009 18:10:53 +0000 (18:10 +0000)]
CastsAwayConstness shouldn't care if member pointers point into different classes. Fixes PR5545.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89215 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDriver: Switch Options.def to storing flags as a bitmask (instead of mangled
Daniel Dunbar [Wed, 18 Nov 2009 17:42:34 +0000 (17:42 +0000)]
Driver: Switch Options.def to storing flags as a bitmask (instead of mangled
into a string).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89212 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCode completion for Objective-C class names after @interface,
Douglas Gregor [Wed, 18 Nov 2009 16:26:39 +0000 (16:26 +0000)]
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

14 years agoFix passing stdc++ correctly in the FreeBSD toolchain support, Credit to Roman Divacky.
Edward O'Callaghan [Wed, 18 Nov 2009 14:51:31 +0000 (14:51 +0000)]
Fix passing stdc++ correctly in the FreeBSD toolchain support, Credit to Roman Divacky.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89205 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate index tests for r89203.
Benjamin Kramer [Wed, 18 Nov 2009 14:20:01 +0000 (14:20 +0000)]
Update index tests for r89203.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89204 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPredefine __INTMAX_WIDTH__ for the future parameterization of INTMAX macros in
Ken Dyck [Wed, 18 Nov 2009 13:52:57 +0000 (13:52 +0000)]
Predefine __INTMAX_WIDTH__ for the future parameterization of INTMAX macros in
stdint.h.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89203 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMinor cleanup to member pointer handling.
Eli Friedman [Wed, 18 Nov 2009 09:41:26 +0000 (09:41 +0000)]
Minor cleanup to member pointer handling.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89201 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSplit LookupResult into its own header.
John McCall [Wed, 18 Nov 2009 07:57:50 +0000 (07:57 +0000)]
Split LookupResult into its own header.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89199 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoClean up EmitPointerToDataMemberBinaryExpr a bit.
Eli Friedman [Wed, 18 Nov 2009 05:01:17 +0000 (05:01 +0000)]
Clean up EmitPointerToDataMemberBinaryExpr a bit.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89197 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCode completion after @property, providing the names of forward-declared properties
Douglas Gregor [Wed, 18 Nov 2009 04:49:41 +0000 (04:49 +0000)]
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

14 years agoRename code-completion test to actually make sense
Douglas Gregor [Wed, 18 Nov 2009 04:41:01 +0000 (04:41 +0000)]
Rename code-completion test to actually make sense

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89195 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCode completion for Objective-C properly lists
Douglas Gregor [Wed, 18 Nov 2009 04:19:12 +0000 (04:19 +0000)]
Code completion for Objective-C properly lists

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89194 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSet up vtable visibility appropriately.
Mike Stump [Wed, 18 Nov 2009 04:00:48 +0000 (04:00 +0000)]
Set up vtable visibility appropriately.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89193 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake CreateOverloadedUnaryOp build the correct node for postinc/dec operators.
Eli Friedman [Wed, 18 Nov 2009 03:58:17 +0000 (03:58 +0000)]
Make CreateOverloadedUnaryOp build the correct node for postinc/dec operators.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89192 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPropagate hidden to the _ZTS symbols appropriately. WIP.
Mike Stump [Wed, 18 Nov 2009 03:46:51 +0000 (03:46 +0000)]
Propagate hidden to the _ZTS symbols appropriately.  WIP.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89191 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd an assertion to catch bad calls to EmitCallArgs.
Eli Friedman [Wed, 18 Nov 2009 03:42:04 +0000 (03:42 +0000)]
Add an assertion to catch bad calls to EmitCallArgs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89190 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSimplify ActOnPostfixUnaryOp.
Eli Friedman [Wed, 18 Nov 2009 03:38:04 +0000 (03:38 +0000)]
Simplify ActOnPostfixUnaryOp.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89188 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoBe sure to set visibility for ZTI symbols for classes from the class.
Mike Stump [Wed, 18 Nov 2009 03:21:29 +0000 (03:21 +0000)]
Be sure to set visibility for ZTI symbols for classes from the class.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89186 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake _ZTI symbols hidden. This speeds up the dynamic linker.
Mike Stump [Wed, 18 Nov 2009 02:53:28 +0000 (02:53 +0000)]
Make _ZTI symbols hidden.  This speeds up the dynamic linker.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89185 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoIncremental progress on using declarations. Split UnresolvedUsingDecl into
John McCall [Wed, 18 Nov 2009 02:36:19 +0000 (02:36 +0000)]
Incremental progress on using declarations.  Split UnresolvedUsingDecl into
two classes, one for typenames and one for values;  this seems to have some
support from Doug if not necessarily from the extremely-vague-on-this-point
standard.  Track the location of the 'typename' keyword in a using-typename
decl.  Make a new lookup result for unresolved values and deal with it in
most places.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89184 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd special clang_getCursor() support for @class. Handles <rdar://problem/7383421>.
Ted Kremenek [Wed, 18 Nov 2009 02:02:52 +0000 (02:02 +0000)]
Add special clang_getCursor() support for @class.  Handles <rdar://problem/7383421>.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89183 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCode completion for member accesses that involve Objective-C properties and instance...
Douglas Gregor [Wed, 18 Nov 2009 01:29:26 +0000 (01:29 +0000)]
Code completion for member accesses that involve Objective-C properties and instance variables

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89182 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoEliminate some completely-redundant lookups
Douglas Gregor [Wed, 18 Nov 2009 01:29:02 +0000 (01:29 +0000)]
Eliminate some completely-redundant lookups

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89181 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPR5520: Make sure to check whether the base type is complete before looking for
Eli Friedman [Wed, 18 Nov 2009 01:28:03 +0000 (01:28 +0000)]
PR5520: Make sure to check whether the base type is complete before looking for
operator->.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89180 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd ObjCClassDecl::getSourceRange().
Ted Kremenek [Wed, 18 Nov 2009 01:26:56 +0000 (01:26 +0000)]
Add ObjCClassDecl::getSourceRange().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89179 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMissing piece of r89173.
Eli Friedman [Wed, 18 Nov 2009 00:57:03 +0000 (00:57 +0000)]
Missing piece of r89173.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89174 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRefactor emitting call to delete operator into common function EmitDeleteCall.
Eli Friedman [Wed, 18 Nov 2009 00:50:08 +0000 (00:50 +0000)]
Refactor emitting call to delete operator into common function EmitDeleteCall.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89173 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix one last gotcha with typeid.
Mike Stump [Wed, 18 Nov 2009 00:40:12 +0000 (00:40 +0000)]
Fix one last gotcha with typeid.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89172 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd SourceLocations to ObjCClassDecl for the class identifiers referenced by @class.
Ted Kremenek [Wed, 18 Nov 2009 00:28:11 +0000 (00:28 +0000)]
Add SourceLocations to ObjCClassDecl for the class identifiers referenced by @class.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89170 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFinish code completion for Objective-C message sends
Douglas Gregor [Wed, 18 Nov 2009 00:06:18 +0000 (00:06 +0000)]
Finish code completion for Objective-C message sends

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89168 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCleanup.
Mike Stump [Tue, 17 Nov 2009 23:51:10 +0000 (23:51 +0000)]
Cleanup.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89166 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd rtti support for arrays, functiond without prototypes, vectors and
Mike Stump [Tue, 17 Nov 2009 23:45:57 +0000 (23:45 +0000)]
Add rtti support for arrays, functiond without prototypes, vectors and
enums.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89165 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRename Objective-C message send completion functions to indicate that we're referring...
Douglas Gregor [Tue, 17 Nov 2009 23:31:36 +0000 (23:31 +0000)]
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

14 years agoRefactor code-completion support for message sends, collecting the
Douglas Gregor [Tue, 17 Nov 2009 23:22:23 +0000 (23:22 +0000)]
Refactor code-completion support for message sends, collecting the
code to find and add Objective-C methods (starting at an
ObjCContainerDecl) into a single, static function. Also, make sure
that we search into the implementations of classes and categories to
find even more methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89163 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPass source locations of identifiers referenced by @class through Action::ActOnForwar...
Ted Kremenek [Tue, 17 Nov 2009 23:12:20 +0000 (23:12 +0000)]
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

14 years agoAdd rtti info for function prototypes and refactor. This allows
Mike Stump [Tue, 17 Nov 2009 23:11:22 +0000 (23:11 +0000)]
Add rtti info for function prototypes and refactor.  This allows
pointer to member functions to work.  WIP.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89161 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDo not register ObjCInterfaceDecls implicitly created by @class in the
Ted Kremenek [Tue, 17 Nov 2009 22:58:30 +0000 (22:58 +0000)]
Do not register ObjCInterfaceDecls implicitly created by @class in the
current DeclContext.  These "imaginary" declarations pose issues for
clients searching DeclContext for actual declarations.  Instead,
register them for name lookup, and add the ObjCInterfaceDecl later to
the DeclContext when we hit an actual @interface declaration.

This also fixes a bug where the invariant that the Decls in a
DeclContext are sorted in order of their appearance is no longer
violated.  What could happen is that an @class causes an
ObjCInterfaceDecl to get added first to the DeclContext, then the
ObjCClassDecl itself is added, and then later the SourceLocation of
the ObjCInterfaceDecl is updated with the correct location (which is
later in the file).  This breaks an assumed invariant in
ResolveLocation.cpp (and possibly other clients).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89160 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoThis patch finalizes implementatin of weak_import
Fariborz Jahanian [Tue, 17 Nov 2009 22:42:00 +0000 (22:42 +0000)]
This patch finalizes implementatin of weak_import
objective-c2 classes (radar 6815425).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89157 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd rtti support for pointer to data members.
Mike Stump [Tue, 17 Nov 2009 22:33:00 +0000 (22:33 +0000)]
Add rtti support for pointer to data members.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89155 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDrop unnecessary #include.
Daniel Dunbar [Tue, 17 Nov 2009 22:25:16 +0000 (22:25 +0000)]
Drop unnecessary #include.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89154 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove unnecessary &&s.
Daniel Dunbar [Tue, 17 Nov 2009 22:25:07 +0000 (22:25 +0000)]
Remove unnecessary &&s.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89153 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMore cases for weak_import objective-c2 classes.
Fariborz Jahanian [Tue, 17 Nov 2009 22:02:21 +0000 (22:02 +0000)]
More cases for weak_import objective-c2 classes.
(still radar 6815425).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89152 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix -Asserts warning.
Daniel Dunbar [Tue, 17 Nov 2009 21:51:03 +0000 (21:51 +0000)]
Fix -Asserts warning.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89149 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd rtti support for non-member pointers. WIP.
Mike Stump [Tue, 17 Nov 2009 21:44:24 +0000 (21:44 +0000)]
Add rtti support for non-member pointers.  WIP.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89148 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMore support for weak_import objective-c2 class.
Fariborz Jahanian [Tue, 17 Nov 2009 21:37:35 +0000 (21:37 +0000)]
More support for weak_import objective-c2 class.
(radar 6815425).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89146 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImprove location information when adding conversion candidates
Douglas Gregor [Tue, 17 Nov 2009 21:16:22 +0000 (21:16 +0000)]
Improve location information when adding conversion candidates

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89141 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofgetln is a BSDism; replace it with more portable code.
Benjamin Kramer [Tue, 17 Nov 2009 20:51:40 +0000 (20:51 +0000)]
fgetln is a BSDism; replace it with more portable code.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89140 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd c-index-test mode "-test-file-scan", which scans a source file and calls clang_ge...
Ted Kremenek [Tue, 17 Nov 2009 19:37:36 +0000 (19:37 +0000)]
Add c-index-test mode "-test-file-scan", which scans a source file and calls clang_getCursor() on every character.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89136 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix test case.
Ted Kremenek [Tue, 17 Nov 2009 19:36:36 +0000 (19:36 +0000)]
Fix test case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89135 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdded block type introspection support.
David Chisnall [Tue, 17 Nov 2009 19:33:30 +0000 (19:33 +0000)]
Added block type introspection support.

As per Fariborz's suggestion, committed now but can be reverted later if the used flag is problematic for Apple.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89134 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFixed bug where ivar offsets were being initialized as 0 with the fragile GNU ABI.
David Chisnall [Tue, 17 Nov 2009 19:32:15 +0000 (19:32 +0000)]
Fixed bug where ivar offsets were being initialized as 0 with the fragile GNU ABI.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89133 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRename test.
Ted Kremenek [Tue, 17 Nov 2009 19:29:41 +0000 (19:29 +0000)]
Rename test.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89132 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd clang_getNullCursor() and clang_equalCursors() (the latter for comparing cursors).
Ted Kremenek [Tue, 17 Nov 2009 19:28:59 +0000 (19:28 +0000)]
Add clang_getNullCursor() and clang_equalCursors() (the latter for comparing cursors).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89131 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUndo previous test fix. -split-phi-edges now disables automatically when the
Jakob Stoklund Olesen [Tue, 17 Nov 2009 19:18:32 +0000 (19:18 +0000)]
Undo previous test fix. -split-phi-edges now disables automatically when the
local register allocator is used.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89127 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoStart support of weak_import objective-c classes.
Fariborz Jahanian [Tue, 17 Nov 2009 19:08:08 +0000 (19:08 +0000)]
Start support of weak_import objective-c classes.
(Radar 6815425).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89124 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoReplace (-INT8_C(128)), which uses an illegally out-of-range argument for
Ken Dyck [Tue, 17 Nov 2009 18:29:12 +0000 (18:29 +0000)]
Replace (-INT8_C(128)), which uses an illegally out-of-range argument for
INT8_C, with (-INT8_C(127)-1) in the definition of INT8_MIN. Apply similar
changes to the definitions of INT16_MIN and INT24_MIN.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89120 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAllow "source_filename" to be an optional argument (the client can provide NULL)...
Ted Kremenek [Tue, 17 Nov 2009 18:18:02 +0000 (18:18 +0000)]
Allow "source_filename" to be an optional argument (the client can provide NULL).  This allows the client to put the source_filename in the command_line_args without fear of the file being named twice.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89118 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoOrganize c-index-test into logic sections, and add section headers.
Ted Kremenek [Tue, 17 Nov 2009 18:13:31 +0000 (18:13 +0000)]
Organize c-index-test into logic sections, and add section headers.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89117 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoClean up c-index-test command line usage a bit by requiring a "-test-load-tu" option...
Ted Kremenek [Tue, 17 Nov 2009 18:09:14 +0000 (18:09 +0000)]
Clean up c-index-test command line usage a bit by requiring a "-test-load-tu" option when testing clang_loadTranslationUnit().  Running c-index-test without the correct arguments now also prints a useful summary of its correct usage.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89115 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdjust format attribute index for implicit object arguments. Fixes PR5521.
Sebastian Redl [Tue, 17 Nov 2009 18:02:24 +0000 (18:02 +0000)]
Adjust format attribute index for implicit object arguments. Fixes PR5521.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89113 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImplement code completion for Objective-C message sends to "super".
Douglas Gregor [Tue, 17 Nov 2009 17:59:40 +0000 (17:59 +0000)]
Implement code completion for Objective-C message sends to "super".

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89112 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFixes a typo, reported by Doug.
Fariborz Jahanian [Tue, 17 Nov 2009 17:15:16 +0000 (17:15 +0000)]
Fixes a typo, reported by Doug.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89107 91177308-0d34-0410-b5e6-96231b3b80d8