]>
granicus.if.org Git - clang/log
Chandler Carruth [Wed, 27 Jan 2010 10:28:04 +0000 (10:28 +0000)]
Silence a GCC warning about uninitialized variables. The first user of this
showed up with a primitive type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94674
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 27 Jan 2010 07:54:50 +0000 (07:54 +0000)]
fix a bug in the _MM_TRANSPOSE4_PS definition, patch by Brian Sumner from
PR6138
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94669
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Wed, 27 Jan 2010 07:37:16 +0000 (07:37 +0000)]
Fix libCIndex.so's lookup of the clang executable on CMake out-of-tree builds.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94668
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Jan 2010 06:45:10 +0000 (06:45 +0000)]
Remove unnecessary ASTContext* argument from isRefType().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94665
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Jan 2010 06:14:12 +0000 (06:14 +0000)]
Update CMake build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94663
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Jan 2010 06:13:48 +0000 (06:13 +0000)]
Start pulling out pieces of the monolithic retain/release checker into
reusable and modular API pieces.
Start by pulling the logic for deriving the Cocoa naming convention
into a separate API, header, and source file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94662
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Jan 2010 04:03:51 +0000 (04:03 +0000)]
Set -ccc-host-triple in these tests.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94661
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 27 Jan 2010 03:51:04 +0000 (03:51 +0000)]
Fix a major oversight in the comparison of standard conversion
sequences, where we would occasionally determine (incorrectly) that
one standard conversion sequence was a proper subset of another when,
in fact, they contained completely incomparable conversions.
This change records the types in each step within a standard
conversion sequence, so that we can check the specific comparison
types to determine when one sequence is a proper subset of the
other. Fixes this testcase (thanks, Anders!), which was distilled from
PR6095 (also thanks to Anders).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94660
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 27 Jan 2010 03:50:35 +0000 (03:50 +0000)]
Implement access-check delays for out-of-line member definitions
using the same framework we use for deprecation warnings.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94659
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 27 Jan 2010 03:47:49 +0000 (03:47 +0000)]
Add support for 3dnow and 3dnowa, and define the target macros accordingly. (This is needed in order to build Qt).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94658
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 27 Jan 2010 03:27:53 +0000 (03:27 +0000)]
It's not Explicit anymore.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94657
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 27 Jan 2010 03:25:19 +0000 (03:25 +0000)]
Structs and classes with non-trivial destructors or copy constructors should be passed indirectly in the 32-bit ABI. Fixes PR6094.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94656
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 27 Jan 2010 03:24:27 +0000 (03:24 +0000)]
Update the xcode project for real and don't check in a failing test.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94655
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 27 Jan 2010 03:22:55 +0000 (03:22 +0000)]
Update xcode project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94654
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 27 Jan 2010 03:06:00 +0000 (03:06 +0000)]
XFAIL this for now.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94653
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 27 Jan 2010 03:03:08 +0000 (03:03 +0000)]
Fix test/CodeGenCXX/default-destructor-synthesis.cpp not to rely on asm output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94652
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 27 Jan 2010 02:49:52 +0000 (02:49 +0000)]
Fix attr.cpp by not checking the generated assembler output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94651
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 27 Jan 2010 01:50:18 +0000 (01:50 +0000)]
Implement access control for overloaded functions. Suppress access control
diagnostics in "early" lookups, such as during typename checks and when building
unresolved lookup expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94647
91177308 -0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 27 Jan 2010 01:22:36 +0000 (01:22 +0000)]
Clarify the documentation of ext_vector, and add a small example. Hopefully
this will alleviate some confusion about the existence of this feature.
Comments/improvements welcome.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94645
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Jan 2010 01:06:14 +0000 (01:06 +0000)]
Support -marm by treating it as an alias for -mno-thumb.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94644
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Jan 2010 00:57:11 +0000 (00:57 +0000)]
Driver/Darwin: Eliminate invalid uses of DarwinVersion -- this fixes a number of
defaults when targetting iPhoneOS (blocks, non-fragile ABI, stack protector).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94642
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Jan 2010 00:57:03 +0000 (00:57 +0000)]
Driver/Darwin: Simplify target version checks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94641
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Jan 2010 00:56:56 +0000 (00:56 +0000)]
Driver/Darwin: Fix a few link arguments when targetting different iPhoneOS
versions to match gcc (which is matching linker changes).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94640
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Jan 2010 00:56:49 +0000 (00:56 +0000)]
Driver/Darwin: Switch clang -triple synthesis to use computed target information.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94639
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Jan 2010 00:56:44 +0000 (00:56 +0000)]
Driver/Darwin: Eliminate confusing IsIPhoneOS parameter -- this was actually
just indicating whether the default target should be iPhoneOS.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94638
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Jan 2010 00:56:37 +0000 (00:56 +0000)]
Driver/Darwin: Switch to using isTargetIPhoneOS where appropriate.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94637
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Jan 2010 00:56:31 +0000 (00:56 +0000)]
Driver/Darwin: Disallow -m{macosx,iphoneos}-version-min as -Xarch arguments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94636
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 27 Jan 2010 00:56:25 +0000 (00:56 +0000)]
Driver/Darwin: Track target platform more explicitly in tool chain, eventually
this should just be part of the tool chain itself once we have eliminated
argument translation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94635
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 27 Jan 2010 00:37:54 +0000 (00:37 +0000)]
Add const version of ObjCMethodDecl::getCanonicalDecl().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94633
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 26 Jan 2010 23:51:00 +0000 (23:51 +0000)]
Teach RegionStore to handle initialization of incomplete arrays in structures using a compound value. Fixes <rdar://problem/
7515938 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94622
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 26 Jan 2010 22:59:55 +0000 (22:59 +0000)]
Move 'LocalCheckers.h' to the 'Checkers' subdirectory.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94609
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 26 Jan 2010 22:56:15 +0000 (22:56 +0000)]
Move 'include/Checkers/PathSensitive/Checkers' directory to 'include/Checkers'.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94608
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 26 Jan 2010 22:48:42 +0000 (22:48 +0000)]
Patch to add 'volatile' to first argument of all
sync compare_and_swap to match them with gcc.
It also fixes a few incorrect argument defitions.
(fixes radar
7540291 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94607
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 26 Jan 2010 22:44:01 +0000 (22:44 +0000)]
Refine the non-virtual this adjustments for thunks by using the offset
to the declaring class from the nearest virtual base class. WIP.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94606
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Tue, 26 Jan 2010 22:01:41 +0000 (22:01 +0000)]
Bring some semblance of order into Decl.h and Decl.cpp. While at it, fix some typo comments and remove an unused and unimplemented function prototype. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94599
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 26 Jan 2010 21:35:27 +0000 (21:35 +0000)]
Refine the non-virtual this adjustments for thunks by using the offset
to the declaring class from the nearest virtual base class. WIP.
This fixes 40% of all the problems remaining in one of my testcases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94592
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 26 Jan 2010 20:37:44 +0000 (20:37 +0000)]
Added assert to the rewrite.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94584
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ken Dyck [Tue, 26 Jan 2010 19:59:28 +0000 (19:59 +0000)]
Convert one last size variable to CharUnits (follow-on to 94577).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94579
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ken Dyck [Tue, 26 Jan 2010 19:44:24 +0000 (19:44 +0000)]
Use CharUnits for sizes, offsets, alignments, and padding amounts for values
that are in character units.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94577
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 26 Jan 2010 19:43:43 +0000 (19:43 +0000)]
Fix typo in comment
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94576
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 26 Jan 2010 19:31:51 +0000 (19:31 +0000)]
Implement 'clang_getInclusions()' in CIndex. This API allows clients to walk the set of files included in a translation unit via the C API.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94575
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 26 Jan 2010 19:19:08 +0000 (19:19 +0000)]
Eliminate clang_getInstantiationLocationOffset(), and instead add an
offset parameter to clang_getInstantiationLocation().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94573
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ken Dyck [Tue, 26 Jan 2010 19:13:33 +0000 (19:13 +0000)]
Use CharUnits for alignments in character units.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94571
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Tue, 26 Jan 2010 18:52:33 +0000 (18:52 +0000)]
Fix two redefinitions in test cases that weren't diagnosed yet, but will be soon.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94565
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ken Dyck [Tue, 26 Jan 2010 18:46:23 +0000 (18:46 +0000)]
Use CharUnits for alignment of UTF16 string in GetAddrOfConstantCFString().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94564
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ken Dyck [Tue, 26 Jan 2010 18:35:11 +0000 (18:35 +0000)]
Use CharUnits for alignment in EmitNullInitializationLValue().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94563
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 26 Jan 2010 18:31:56 +0000 (18:31 +0000)]
Implement clang_annotateTokens(), which associates cursors with each
of the tokens within a raw token stream. This does not even attempt to
handle macros yet.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94561
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 26 Jan 2010 18:28:51 +0000 (18:28 +0000)]
Refix rewriting of an ivar access when it is
type-cast to its sub-class (radar
7575882 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94559
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 26 Jan 2010 17:59:48 +0000 (17:59 +0000)]
Add 'PostVisitTU' callback hook to 'perform_test_load()' to allow a special callback after the translation unit has been loaded (and streamed).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94557
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 26 Jan 2010 17:55:33 +0000 (17:55 +0000)]
Allow the 'visitor' argument to 'perform_test_load()' to be NULL. The
utility of this change will be made clearer in a subsequent patch when
perform_test_load()' does more than stream the AST.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94556
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 26 Jan 2010 17:43:42 +0000 (17:43 +0000)]
Use the right definition when emitting a global variable. Fixes PR5564.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94555
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 26 Jan 2010 17:36:47 +0000 (17:36 +0000)]
Change getUnique to return a GlobalDecl. Fixes PR6147.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94554
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ken Dyck [Tue, 26 Jan 2010 17:25:18 +0000 (17:25 +0000)]
Correct cut-and-paste error in doxygen comment for newly introduced
getTypeAlignInChars().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94553
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ken Dyck [Tue, 26 Jan 2010 17:22:55 +0000 (17:22 +0000)]
Add getTypeAlignInChars() for use in code that works in alignments in character
units.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94552
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 26 Jan 2010 17:06:03 +0000 (17:06 +0000)]
Introduce a CIndex API for lexing the raw tokens within a given source
range. The token-annotation function does nothing, yet.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94551
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ken Dyck [Tue, 26 Jan 2010 17:01:47 +0000 (17:01 +0000)]
Replace inheritance of RegionRawOffset from std::pair with two private member
variables to improve readability and encapsulation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94550
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ken Dyck [Tue, 26 Jan 2010 13:48:07 +0000 (13:48 +0000)]
Introduce CodeGenModule::GetTargetTypeStoreSize() to calculate the store size
of LLVM types in character units.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94542
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 26 Jan 2010 07:37:41 +0000 (07:37 +0000)]
Avoid some unnecessary copying of unresolved lookup results.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94531
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 26 Jan 2010 07:16:45 +0000 (07:16 +0000)]
Handle redeclarations found by ADL deterministically and reasonably.
This solution relies on an O(n) scan of redeclarations, which means it might
scale poorly in crazy cases with tons of redeclarations brought in by a ton
of distinct associated namespaces. I believe that avoiding this
is not worth the common-case cost.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94530
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Tue, 26 Jan 2010 06:39:24 +0000 (06:39 +0000)]
Correctly treat 64 bit integers specified via the mode attribute as the 'long'
type when that type is 64 bits wide, and the 'long long' type when 'long' is
only 32 bits wide. This fixes PR6108.
Also adds a bunch of test cases to ensure proper conversion between equally
sized standard types and mode-specified types on both 32 and 64 bit targets.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94527
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 26 Jan 2010 06:15:16 +0000 (06:15 +0000)]
If a global variable has an initializer with side effects, it can never be deferred (even if it's in an anonymous namespace).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94525
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 26 Jan 2010 06:04:06 +0000 (06:04 +0000)]
Allow ADL to find functions imported by using decls. Leave wordy comment
about interaction between ADL and default arguments. Shrug shoulders, commit.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94524
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Tue, 26 Jan 2010 05:36:44 +0000 (05:36 +0000)]
Remove a few more references to index-test; this was killed in r94210.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94522
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 26 Jan 2010 05:26:39 +0000 (05:26 +0000)]
Fix another debug info crash with virtual bases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94520
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 26 Jan 2010 05:19:50 +0000 (05:19 +0000)]
Fix the test I broke, and also fix a crash when declaring a virtual destructor. Add debug info support for pure virtual member functions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94519
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 26 Jan 2010 04:49:33 +0000 (04:49 +0000)]
Factor creating the DISubprogram for a member function out into a separate function.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94513
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 26 Jan 2010 04:40:11 +0000 (04:40 +0000)]
Simplify CGDebugInfo::CollectCXXMemberFunctions a little. More to come.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94511
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 26 Jan 2010 04:02:23 +0000 (04:02 +0000)]
Make sure to always mark a global variable as not being constant if it has a C++ initializer.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94504
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Jan 2010 03:56:40 +0000 (03:56 +0000)]
Simplify.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94503
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 26 Jan 2010 03:42:22 +0000 (03:42 +0000)]
Be sure to track the non-virtual part of the vcall offset in complex
multiple inheritance cases. WIP.
This fixes 20% of the outstanding problems found by the randomized
tester.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94499
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 26 Jan 2010 03:27:55 +0000 (03:27 +0000)]
Preserve access bits through overload resolution much better. Some
general refactoring in operator resolution.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94498
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 26 Jan 2010 03:07:15 +0000 (03:07 +0000)]
Introduce clang_getInstantiationLocationOffset(), which decomposes a
source location in file + offset.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94497
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Jan 2010 01:45:19 +0000 (01:45 +0000)]
Driver/Darwin: Honor IPHONEOS_DEPLOYMENT_TARGET.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94488
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 26 Jan 2010 01:44:04 +0000 (01:44 +0000)]
Driver/Darwin: Stuff iPhoneOS into environment portion of the (llvm/clang) triple instead of keying off architecture. Also, fix version define to properly include the revision/micro component of the version number.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94487
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 26 Jan 2010 01:37:31 +0000 (01:37 +0000)]
Pass access specifiers around in overload resolution.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94485
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 26 Jan 2010 00:29:22 +0000 (00:29 +0000)]
Fix a regression caused by my rewriting of cast of ivar
access (was radar
7575882 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94481
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Tue, 26 Jan 2010 00:05:04 +0000 (00:05 +0000)]
Fixup a missing vcall entry. WIP.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94478
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 25 Jan 2010 23:32:18 +0000 (23:32 +0000)]
First cut at emitting inheritance info.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94473
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 25 Jan 2010 23:17:15 +0000 (23:17 +0000)]
Emit debug info for virtual functions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94467
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Mon, 25 Jan 2010 23:12:50 +0000 (23:12 +0000)]
Fixit to remove 'volatile' in file-scope 'asm volatile'.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94466
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Jan 2010 22:35:08 +0000 (22:35 +0000)]
Driver: Fix fallback to gcc to -c instead of -S if trying to generate an LLVM bc
file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94463
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Jan 2010 22:34:44 +0000 (22:34 +0000)]
Pull functions that translate from CXSourceLocation to SourceLocation (and back) to a separate header file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94462
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Mon, 25 Jan 2010 22:27:48 +0000 (22:27 +0000)]
Warn on top-level 'asm volatile' (instead of misparsing it).
"Fixes" rdar://problem/
7574870
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94458
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Mon, 25 Jan 2010 21:40:39 +0000 (21:40 +0000)]
global variable that binds reference to a non-lvalue reproted
as NYI now.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94453
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Jan 2010 21:09:34 +0000 (21:09 +0000)]
Fix include guard.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94447
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Mon, 25 Jan 2010 20:50:02 +0000 (20:50 +0000)]
Fixes a rewriting bug of access ivar of a variable cast
to subclass. (Fixes radar
7575882 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94444
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Mon, 25 Jan 2010 18:30:26 +0000 (18:30 +0000)]
Fix a code gen. bug involving compiling global references.
(fixes radar
7574896 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94434
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 25 Jan 2010 17:48:13 +0000 (17:48 +0000)]
Add test case for ? : crasher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94429
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Jan 2010 17:10:22 +0000 (17:10 +0000)]
Move BugReporter.h, PathDiagnostic.h, and BugType.h to 'include/Checker/BugReporter'
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94428
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Mon, 25 Jan 2010 17:04:54 +0000 (17:04 +0000)]
Code simplification; this should have no visible effects.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94427
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 25 Jan 2010 16:56:17 +0000 (16:56 +0000)]
Loosen preconditions for clang_getCursorSpelling(), returning an empty
string when given a cursor that does not have a name. Also, don't give
silly names for statements and non-reference expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94426
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 25 Jan 2010 16:45:46 +0000 (16:45 +0000)]
Expect the impossible
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94425
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 25 Jan 2010 16:33:23 +0000 (16:33 +0000)]
Move the type specifier location for elaborated-type-specifiers from
the tag kind (union, struct, class, enum) over to the name of the tag,
if there is a name, since most clients want to point at the name.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94424
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 25 Jan 2010 16:12:32 +0000 (16:12 +0000)]
Visit the condition variables of while and for loops; also, visit the
condition even when we've visited the condition variable, so that
we'll see implicit conversions there.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94423
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Mon, 25 Jan 2010 12:20:15 +0000 (12:20 +0000)]
Update C++ include paths for Exherbo, by Ingmar Vanhassel.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94420
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Jan 2010 09:16:55 +0000 (09:16 +0000)]
cindex/Python: Move translation unit load functions to Index, there isn't a good reason to have separate static methods for this.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94419
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 25 Jan 2010 09:16:41 +0000 (09:16 +0000)]
cindex/Python: Support file objects as unsaved_files, albeit inefficiently.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94418
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Jan 2010 05:19:37 +0000 (05:19 +0000)]
Add missing header.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94409
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Jan 2010 04:48:38 +0000 (04:48 +0000)]
Add missing file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94407
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 25 Jan 2010 04:41:41 +0000 (04:41 +0000)]
Split libAnalysis into two libraries: libAnalysis and libChecker.
(1) libAnalysis is a generic analysis library that can be used by
Sema. It defines the CFG, basic dataflow analysis primitives, and
inexpensive flow-sensitive analyses (e.g. LiveVariables).
(2) libChecker contains the guts of the static analyzer, incuding the
path-sensitive analysis engine and domain-specific checks.
Now any clients that want to use the frontend to build their own tools
don't need to link in the entire static analyzer.
This change exposes various obvious cleanups that can be made to the
layout of files and headers in libChecker. More changes pending. :)
This change also exposed a layering violation between AnalysisContext
and MemRegion. BlockInvocationContext shouldn't explicitly know about
BlockDataRegions. For now I've removed the BlockDataRegion* from
BlockInvocationContext (removing context-sensitivity; although this
wasn't used yet). We need to have a better way to extend
BlockInvocationContext (and any LocationContext) to add
context-sensitivty.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94406
91177308 -0d34-0410-b5e6-
96231b3b80d8