]>
granicus.if.org Git - clang/log
Douglas Gregor [Mon, 24 Aug 2009 17:42:35 +0000 (17:42 +0000)]
Implement support for equality comparisons (!=, ==) of member
pointers, by extending the "composite pointer type" logic to include
member pointer types.
Introduce test cases for member pointer comparisons, including those
that involve the builtin operator candidates implemented earlier.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79925
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Aug 2009 17:39:36 +0000 (17:39 +0000)]
normalize the CharacterLiteral::getLocation method name, patch
by Enea Zaffanella!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79924
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Mon, 24 Aug 2009 17:19:23 +0000 (17:19 +0000)]
Fixes pr4763.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79923
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 24 Aug 2009 17:16:23 +0000 (17:16 +0000)]
More member pointer work.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79922
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 24 Aug 2009 16:52:33 +0000 (16:52 +0000)]
Remove dead code
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79921
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 24 Aug 2009 15:23:48 +0000 (15:23 +0000)]
Try to complete a type before looking for conversion functions within
that type. Note that we do not produce a diagnostic if the type is
incomplete; rather, we just don't look for conversion functions. Fixes PR4660.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79919
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 24 Aug 2009 13:43:27 +0000 (13:43 +0000)]
Refactor the template-instantiation logic for expressions into a
generic tree transformation (also used for recanonicalization) and a
small amount of template-instantiation-specific logic.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79917
91177308 -0d34-0410-b5e6-
96231b3b80d8
Torok Edwin [Mon, 24 Aug 2009 13:25:12 +0000 (13:25 +0000)]
Fix build of clang with gcc-4.4: #include <cstdio> was missing.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79916
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 24 Aug 2009 12:20:57 +0000 (12:20 +0000)]
Improve top-level-semicolon test a bit
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79913
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 24 Aug 2009 12:17:54 +0000 (12:17 +0000)]
Top-level semicolons are allowed in C++0x. Fixes PR4755.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79912
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 24 Aug 2009 11:57:43 +0000 (11:57 +0000)]
Make sure to adjust function template declarations to their templated
declarations (e.g., FunctionTemplateDecl -> CXXConstructorDecl) before
performing semantic analysis on the declarations. Fixes PR4761.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79911
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 24 Aug 2009 09:54:37 +0000 (09:54 +0000)]
Remove TargetInfo::getTargetPrefix().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79907
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 24 Aug 2009 09:31:37 +0000 (09:31 +0000)]
Switch to StringRef based BitstreamWriter APIs, where appropriate.
- There is lots of non-endian safe code in here... :/
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79905
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 24 Aug 2009 09:16:49 +0000 (09:16 +0000)]
Remove arch normalization from Driver, this should be unnecessary now that
things have moved to llvm::Triple.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79902
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 24 Aug 2009 09:10:05 +0000 (09:10 +0000)]
Switch TargetInfo to store an llvm::Triple.
- Primarily to discourage clients form making decisions based on the string.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79901
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 24 Aug 2009 08:52:16 +0000 (08:52 +0000)]
Switch ABI selection to use llvm::Triple instead of string munging.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79900
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Aug 2009 05:19:01 +0000 (05:19 +0000)]
fix a GCC type punning warning.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79895
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Aug 2009 04:11:30 +0000 (04:11 +0000)]
prune #includes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79889
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Aug 2009 22:45:33 +0000 (22:45 +0000)]
API changes to match llvm ToT.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79868
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 23 Aug 2009 19:41:53 +0000 (19:41 +0000)]
Reenable clang using clang-cc for C++ and all archs by default.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79861
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 23 Aug 2009 19:28:59 +0000 (19:28 +0000)]
Fix a few tests to be -Asserts agnostic.
- Ugh.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79860
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 23 Aug 2009 18:42:54 +0000 (18:42 +0000)]
Temporarily switch clang back to not using clang-cc by default for C++, and only
using clang-cc on i386 and x86_64.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79859
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sun, 23 Aug 2009 12:08:50 +0000 (12:08 +0000)]
Replace cerr with errs().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79854
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 23 Aug 2009 08:52:09 +0000 (08:52 +0000)]
cerr -> errs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79844
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 23 Aug 2009 08:22:33 +0000 (08:22 +0000)]
Tests for C++ lex.trigraph, patch by Mats!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79841
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Aug 2009 05:57:09 +0000 (05:57 +0000)]
use errs() instead of cerr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79829
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Sun, 23 Aug 2009 05:28:29 +0000 (05:28 +0000)]
CMake: Improve installation of Clang
- Install clang-cc into libexec
- Install headers into lib/clang/<version>/include
- Don't install other clang-based tools (clang-wpa, clang-index, etc.)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79827
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Sun, 23 Aug 2009 05:02:18 +0000 (05:02 +0000)]
Don't install Clang libraries.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79824
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Aug 2009 02:59:41 +0000 (02:59 +0000)]
adjust for raw_fd_ostream api change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79809
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sun, 23 Aug 2009 01:28:08 +0000 (01:28 +0000)]
Whoops, comment this out for now. I'll fix it shortly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79806
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sun, 23 Aug 2009 01:25:01 +0000 (01:25 +0000)]
More work towards zero-initializing structs that contain member pointers in constant expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79805
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sun, 23 Aug 2009 01:01:04 +0000 (01:01 +0000)]
Remove the PaddingFields member from CGRecordLayout, it wasn't used anyway.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79799
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Sun, 23 Aug 2009 00:27:47 +0000 (00:27 +0000)]
Catch a few more cases of illegal comparisons.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79793
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Aug 2009 00:03:44 +0000 (00:03 +0000)]
Eli points out that we really must diagnose "void* > 0" as an extension.
Explicitly add it as an EXTENSION instead of an EXTWARN so that it only
comes out with -pedantic. Thanks Eli!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79791
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sun, 23 Aug 2009 00:02:11 +0000 (00:02 +0000)]
Handle CK_NullToMemberPointer casts in the constant expr emitter.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79790
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sat, 22 Aug 2009 23:54:44 +0000 (23:54 +0000)]
Change the constant expression emitter to look at the cast kind for to-union casts.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79789
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sat, 22 Aug 2009 23:33:40 +0000 (23:33 +0000)]
Add CK_NullToMemberPointer and CK_BaseToDerivedMemberPointer cast kinds. Make -ast-dump print out the cast kinds of cast expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79787
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Sat, 22 Aug 2009 22:30:33 +0000 (22:30 +0000)]
Add a -fno-elide-constructors option to clang-cc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79782
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Sat, 22 Aug 2009 22:27:17 +0000 (22:27 +0000)]
Type of a ?: expression whose either expression is a built-in 'id'
type is 'id' type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79781
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Sat, 22 Aug 2009 21:13:55 +0000 (21:13 +0000)]
Don't issue warning on multiple selector found when
selector name is for a @selector expression.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79776
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Sat, 22 Aug 2009 20:32:44 +0000 (20:32 +0000)]
Removed couple of FIXME comments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79757
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Sat, 22 Aug 2009 19:24:56 +0000 (19:24 +0000)]
Removed -Wundeclared-selector and -Wreadonly-setter-attrs from
-Wmost group (too noisy). Placed warning on parameter type
misatch between methods in sub and super class under
-Wsuper-class-method-mismatch (also too noisy).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79745
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 22 Aug 2009 18:58:31 +0000 (18:58 +0000)]
tweak some pointer sema checking stuff (which was added to implement PR4175) to
avoid emitting a warning on "someptr > 0". This is obviously questionable (they
could use != instead) but is reasonable, and the warning "ordered comparison
between pointer and integer" didn't make a ton of sense because 0 is a valid
null pointer constant.
Just silence the warning in this case, it is unlikely to indicate a bug.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79743
91177308 -0d34-0410-b5e6-
96231b3b80d8
Edward O'Callaghan [Sat, 22 Aug 2009 01:06:46 +0000 (01:06 +0000)]
Second half of, clang, AuroraUX toolchain support.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79713
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Sat, 22 Aug 2009 00:34:47 +0000 (00:34 +0000)]
Implement delayed parsing for member function templates. Fixes PR4608.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79709
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Sat, 22 Aug 2009 00:18:52 +0000 (00:18 +0000)]
Updated statuc page to reflect recent implementations
of section 12 [special member functions]
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79704
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 21 Aug 2009 23:58:43 +0000 (23:58 +0000)]
Remove 'AnalysisContext::setDecl()', as we the Decl associated with an
AnalysisContext should never change. Along the way, propagate some constness
around.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79701
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 21 Aug 2009 23:39:58 +0000 (23:39 +0000)]
Constify LocationContext* (parent) and Stmt* fields in LocationContext.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79700
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 21 Aug 2009 23:32:45 +0000 (23:32 +0000)]
Add test taking the address of a member function template and converting it to a member pointer.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79699
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 21 Aug 2009 23:27:46 +0000 (23:27 +0000)]
Update Clang C++ status to better reflect what is implemented.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79695
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 21 Aug 2009 23:25:54 +0000 (23:25 +0000)]
Remove 'SelfRegion' field from both BasicStoreManager and RegionStoreManager.
SelfRegion represented the object bound to 'self' (when analyzing Objective-C
methods) upon entry to a method. Having this region stored on the side ignores
the current stack frame that we might be analyzing (among other things), and is
a problem for interprocedural analysis.
For RegionStoreManager, the value for SelfRegion is just lazily created.
For BasicStoreManager, the value for SelfRegion is bound eagerly to 'self', but
no explicit tracking of SelfRegion on the side is made.
As part of this change, remove the restriction in BasicStoreManager that we only
track ivars for 'self'. This shouldn't actually change anything in terms of
precision, and simplifies the logic.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79694
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 21 Aug 2009 23:19:43 +0000 (23:19 +0000)]
Implement conversion function templates, along with the ability to use
template argument deduction from a conversion function (C++
[temp.deduct.conv]) with implicit conversions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79693
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Fri, 21 Aug 2009 23:09:30 +0000 (23:09 +0000)]
Calculate the address point for a vtable better, and start fleshing out the vcall
calculations better.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79687
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 21 Aug 2009 22:43:28 +0000 (22:43 +0000)]
Refactor instantiation of destructors to use the common CXXMethodDecl
code, fixing a problem where instantiations of out-of-line destructor
definitions would had the wrong lexical context.
Introduce tests for out-of-line definitions of the constructors,
destructors, and conversion functions of a class template partial
specialization.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79682
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 21 Aug 2009 22:34:55 +0000 (22:34 +0000)]
Patch to ir-gen copy assigning array members when synthesizing
a copy assignment operator function.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79681
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 21 Aug 2009 22:28:32 +0000 (22:28 +0000)]
Add LocationContext* field to VarRegion. This is needed for interprocedural analysis.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79680
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 21 Aug 2009 22:23:24 +0000 (22:23 +0000)]
Add test for out-of-line definition of a conversion function
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79679
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 21 Aug 2009 22:16:40 +0000 (22:16 +0000)]
Fix parsing for out-of-line definitions of constructors and
destructors of class templates.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79678
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 21 Aug 2009 18:42:58 +0000 (18:42 +0000)]
Introduce support for constructor templates, which can now be declared
and will participate in overload resolution. Unify the instantiation
of CXXMethodDecls and CXXConstructorDecls, which had already gotten
out-of-sync.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79658
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 21 Aug 2009 18:30:26 +0000 (18:30 +0000)]
Patch to provide ir-gen support in copying array members
when synthesizing a copy constructor. Arrays's base element
may have a trivial or non-trivial copy constructor.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79653
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Fri, 21 Aug 2009 18:05:02 +0000 (18:05 +0000)]
Testcase for a recent checkin.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79646
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 21 Aug 2009 17:15:06 +0000 (17:15 +0000)]
remove a dead warning.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79641
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 21 Aug 2009 17:09:38 +0000 (17:09 +0000)]
Array member construction in prologue of user-declared
constructors.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79640
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 21 Aug 2009 16:31:06 +0000 (16:31 +0000)]
Introduce getConstantArrayElementCount API and use it in
construction/destruction of array members.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79637
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Fri, 21 Aug 2009 15:22:41 +0000 (15:22 +0000)]
Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79632
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Fri, 21 Aug 2009 13:25:15 +0000 (13:25 +0000)]
Eagerly bind 'self' to SelfRegion. Thus we do not need to get code decl from
GRStateManager to create the SelfRegion.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79628
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 21 Aug 2009 08:24:45 +0000 (08:24 +0000)]
Fix commentos
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79610
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 21 Aug 2009 08:22:12 +0000 (08:22 +0000)]
Fix refacto.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79609
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sanjiv Gupta [Fri, 21 Aug 2009 04:58:03 +0000 (04:58 +0000)]
Reversing part of 79544.
Need to find a new way to do target specific semanitc checking.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79596
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Fri, 21 Aug 2009 03:05:36 +0000 (03:05 +0000)]
Get the code decl from the initial location context.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79591
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Fri, 21 Aug 2009 02:58:11 +0000 (02:58 +0000)]
Get the code decl from the initial location context.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79590
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 21 Aug 2009 02:43:05 +0000 (02:43 +0000)]
gcc told me to add these.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79589
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Fri, 21 Aug 2009 02:18:44 +0000 (02:18 +0000)]
Tie the local check NSErrorCheck to a Decl to pave the way
to untie the ExplodedGraph from a specific Decl.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79588
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Fri, 21 Aug 2009 01:45:00 +0000 (01:45 +0000)]
We now support overriding base functions in vtables. WIP.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79587
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 21 Aug 2009 00:54:25 +0000 (00:54 +0000)]
Remove comma at the end of enumerator list.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79586
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Fri, 21 Aug 2009 00:31:54 +0000 (00:31 +0000)]
Remove TypeSpecStartLocation from VarDecl/FunctionDecl/FieldDecl, and use DeclaratorInfo to get this information.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79584
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 21 Aug 2009 00:27:50 +0000 (00:27 +0000)]
Make the new Objective-C "id" and "Class" redefinition types special
types that are preloaded by the PCH file. Fixes PCH breakage
introduced in r79248.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79583
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 21 Aug 2009 00:16:32 +0000 (00:16 +0000)]
Implement support for calling member function templates, which involves:
- Allowing one to name a member function template within a class
template and on the right-hand side of a member access expression.
- Template argument deduction for calls to member function templates.
- Registering specializations of member function templates (and
finding them later).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79581
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 21 Aug 2009 00:04:20 +0000 (00:04 +0000)]
Center the dragon.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79580
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 20 Aug 2009 23:49:30 +0000 (23:49 +0000)]
Make the dragon a link...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79577
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 20 Aug 2009 23:48:37 +0000 (23:48 +0000)]
Include LLVM logo ... because dragons are cool.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79576
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 20 Aug 2009 23:33:31 +0000 (23:33 +0000)]
Added member arrays to more tests now that ir-gen supports it.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79575
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 20 Aug 2009 23:02:58 +0000 (23:02 +0000)]
Patch to ir-gen destruction of array member elements in revers order
of their construction.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79571
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 20 Aug 2009 22:52:58 +0000 (22:52 +0000)]
Initial support for parsing and representation of member function templates.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79570
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 20 Aug 2009 20:54:15 +0000 (20:54 +0000)]
ir-gen patch to destruct array members. WIP.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79565
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 20 Aug 2009 18:55:46 +0000 (18:55 +0000)]
Update checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79559
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 20 Aug 2009 18:46:05 +0000 (18:46 +0000)]
Fix a typo in a variable name
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79558
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 20 Aug 2009 18:45:52 +0000 (18:45 +0000)]
Don't install wpa or index-test tools.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79557
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sanjiv Gupta [Thu, 20 Aug 2009 17:48:52 +0000 (17:48 +0000)]
Issue an error if the user specifies parameters in a function marked as ISR.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79544
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 20 Aug 2009 17:02:02 +0000 (17:02 +0000)]
Using "ObjCImplicitSetterGetterRefExpr" instead of "ObjCImplctSetterGetterRefExpr".
A field rename and more comments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79537
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Thu, 20 Aug 2009 07:22:17 +0000 (07:22 +0000)]
Refine vbase offsets for the inductive case. Things are now starting
to come together nicely. Still a WIP.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79521
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 20 Aug 2009 07:19:42 +0000 (07:19 +0000)]
Add syntax examples for the friend declaration types.
Remove an assert trivialized by dominating code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79520
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 20 Aug 2009 07:17:43 +0000 (07:17 +0000)]
Refactor the instantiation of statements into a generic tree
transformation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79519
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 20 Aug 2009 06:17:11 +0000 (06:17 +0000)]
Improve the Getting Started and Hacking web pages, patch by
John Thompson!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79518
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 20 Aug 2009 05:13:36 +0000 (05:13 +0000)]
retain/release checker: Treat NSObject method '-awakeAfterUsingCoder:'
just as if it behaved like an init function. This fixes <rdar://problem/
7129086 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79515
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 20 Aug 2009 04:48:23 +0000 (04:48 +0000)]
Make this test case more portable by removing its dependency on system header files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79511
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Thu, 20 Aug 2009 04:21:42 +0000 (04:21 +0000)]
Fix bit-field promotion to be a bit closer to the behavior of gcc.
Patch by Enea Zaffanella, with some simplifications/corrections to
isPromotableBitField by me.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79510
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 20 Aug 2009 03:21:49 +0000 (03:21 +0000)]
If the 'while' has an empty body, set the body to the continue target block.
Although this does not make the CFG more correct, it makes the CFG more
beautiful without multiple roots.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79509
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 20 Aug 2009 02:56:48 +0000 (02:56 +0000)]
If the body of for loop is empty, set its body to the continue target.
Otherwise we get a wrong CFG.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79507
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Thu, 20 Aug 2009 02:11:48 +0000 (02:11 +0000)]
Ensure we don't output repeated vbase offsets. I have a testcase for
this, but need to fixup the actual offset value before I can check it
in. WIP.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79506
91177308 -0d34-0410-b5e6-
96231b3b80d8