]>
granicus.if.org Git - clang/log
Douglas Gregor [Tue, 16 Mar 2010 20:53:17 +0000 (20:53 +0000)]
Update get*LineNumber() and get*ColumnNumber() functions to pass the
Invalid bit through; there are no safety-critical callers of these
functions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98674
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 16 Mar 2010 20:46:42 +0000 (20:46 +0000)]
Audit all callers of SourceManager::getCharacterData(); update some of
them to recover more gracefully on failure.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98672
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 16 Mar 2010 20:26:15 +0000 (20:26 +0000)]
Audit all callers of SourceManager::getBufferData(); fix the one that
needs better error recovery.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98667
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 16 Mar 2010 20:01:30 +0000 (20:01 +0000)]
Audit all getBuffer() callers (for both the FullSourceLoc and
SourceManager versions), updating those callers that need to recover
gracefully from failure.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98665
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 16 Mar 2010 19:49:24 +0000 (19:49 +0000)]
Teach the one caller of SourceManager::getMemoryBufferForFile() to cope with errors
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98664
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 16 Mar 2010 19:29:19 +0000 (19:29 +0000)]
accept and ignore __gcc_tdiag__ so we don't produce warnings
building mainline GCC, PR6542
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98661
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 16 Mar 2010 19:09:18 +0000 (19:09 +0000)]
Make sure we actually override ReadHeaderFileInfo when we meant to
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98655
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 16 Mar 2010 16:57:46 +0000 (16:57 +0000)]
Driver: Fix forwarding of -fno-lax-vector-conversions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98639
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 16 Mar 2010 16:35:32 +0000 (16:35 +0000)]
Fix header-search problems with precompiled headers, where the
presence or absence of header map arguments when using the precompiled
header would cause Clang to get confused about which headers had
already been included/imported, along with their controlling
macros. The fundamental problem is that the serialization of the
header search information was relying on the UIDs of FileEntry objects
at PCH generation time and PCH load time to be equivalent, which
effectively means that we had to probe the same files in the same
order. Differing header map arguments caused an extra FileEntry
lookup, but it's easy to imagine other minor command-line arguments
triggering this problem.
Header-search information is now encoded along with the
source-location entry for a file, so that we register information
about a file's properties as a header at the same time we create the
FileEntry for that file.
Fixes <rdar://problem/
7743243 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98636
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Tue, 16 Mar 2010 14:48:07 +0000 (14:48 +0000)]
Switch another function to StringRef instead of char pointer pairs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98631
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Tue, 16 Mar 2010 14:14:31 +0000 (14:14 +0000)]
Let SourceManager::getBufferData return StringRef instead of a pair of two const char*.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98630
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Tue, 16 Mar 2010 13:14:16 +0000 (13:14 +0000)]
Add VisitCXXContructExpr logic to the analyzer. This still has not fully worked
since RemoveDeadBinding mistakenly remove the binding to CXXThisRegion.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98629
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 16 Mar 2010 06:11:48 +0000 (06:11 +0000)]
Access control for implicit calls to copy assignment operators and copy
constructors from implicitly-defined members.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98614
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 16 Mar 2010 06:04:47 +0000 (06:04 +0000)]
Don't consume tokens past the end-of-file in an @interface. Fixes
<rdar://problem/
7735566 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98613
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 16 Mar 2010 05:36:30 +0000 (05:36 +0000)]
Perform access control even for the implicit destructor calls from implicit
destructor definitions. Remove some code duplication.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98611
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 16 Mar 2010 05:22:47 +0000 (05:22 +0000)]
Perform access control for the implicit base and member destructor calls
required when emitting a destructor definition.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98609
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 16 Mar 2010 05:20:39 +0000 (05:20 +0000)]
Introduce optional "Invalid" parameters to routines that invoke the
SourceManager's getBuffer() and, therefore, could fail, along with
Preprocessor::getSpelling(). Use the Invalid parameters in the literal
parsers (string, floating point, integral, character) to make them
robust against errors that stem from, e.g., PCH files that are not
consistent with the underlying file system.
I still need to audit every use caller to all of these routines, to
determine which ones need specific handling of error conditions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98608
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 16 Mar 2010 00:35:39 +0000 (00:35 +0000)]
Use SourceManager's Diagnostic object for all file-reading errors,
simplifying the SourceManager interfaces somewhat.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98598
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 16 Mar 2010 00:06:06 +0000 (00:06 +0000)]
Give SourceManager a Diagnostic object with which to report errors,
and start simplifying the interfaces in SourceManager that can fail.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98594
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 15 Mar 2010 23:33:37 +0000 (23:33 +0000)]
Add some <cstdio> includes to unbreak the buildbots
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98591
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Mon, 15 Mar 2010 23:22:58 +0000 (23:22 +0000)]
Add remaining sse4.1 intrinsics and builtins.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98587
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 15 Mar 2010 22:54:52 +0000 (22:54 +0000)]
Introduce a new BufferResult class to act as the return type of
SourceManager's getBuffer() (and similar) operations. This abstract
can be used to force callers to cope with errors in getBuffer(), such
as missing files and changed files. Fix a bunch of callers to use the
new interface.
Add some very basic checks for file consistency (file size,
modification time) into ContentCache::getBuffer(), although these
checks don't help much until we've updated the main callers (e.g.,
SourceManager::getSpelling()).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98585
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 15 Mar 2010 20:30:07 +0000 (20:30 +0000)]
Move method FindPropertyVisibleInPrimaryClass() from ObjCContainerDecl to ObjCInterfaceDecl.
Also change this method to lookup property declarations using DeclContext::lookup().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98574
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 15 Mar 2010 20:11:53 +0000 (20:11 +0000)]
Change ObjCCategoryDecl::FindPropertyDeclaration() to lookup
property decls using DeclContext::lookup().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98571
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 15 Mar 2010 20:11:46 +0000 (20:11 +0000)]
Make 'findPropertyDecl()' a static method of ObjCPropertyDecl.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98570
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 15 Mar 2010 18:47:29 +0000 (18:47 +0000)]
Add 'expected-note'
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98560
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 15 Mar 2010 18:47:25 +0000 (18:47 +0000)]
Correctly determine if the @property has been previously declared. If
a property has the same name as the ivar it wraps then the old logic
wouldn't find the previous property declaration.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98559
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Mon, 15 Mar 2010 18:36:00 +0000 (18:36 +0000)]
objective-c++ must take into account qualifiers when
considering valid objc pointer converions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98557
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 15 Mar 2010 17:45:13 +0000 (17:45 +0000)]
Add comment to CFG to 'buildCFG()' arguments indicating that scope
support is not fully implemented.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98555
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 15 Mar 2010 17:38:58 +0000 (17:38 +0000)]
Rename clang_constructUSR_ObjCategory to clang_constructUSR_ObjCCategory.
(there was a missing 'C').
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98554
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Mon, 15 Mar 2010 17:31:29 +0000 (17:31 +0000)]
Remove useless forward decl.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98553
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 15 Mar 2010 15:26:48 +0000 (15:26 +0000)]
During C++ name lookup, use DeclContext::Equals() rather than
comparing DeclContext pointers, to avoid having to remember to call
getPrimaryContext() everywhere. This is the last part PR6594.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98546
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 15 Mar 2010 14:33:29 +0000 (14:33 +0000)]
Implement C++ [temp.local]p8, which specifies that a template
parameter hides a namespace-scope declararion with the same name in an
out-of-line definition of a template. The lookup requires a strange
interleaving of lexical and semantic scopes (go C++), which I have not
yet handled in the typo correction/code completion path.
Fixes PR6594.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98544
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Mon, 15 Mar 2010 10:54:44 +0000 (10:54 +0000)]
Add support for -Wwrite-strings. Patch by Mike M! Fixes PR 4804.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98541
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Mon, 15 Mar 2010 10:12:16 +0000 (10:12 +0000)]
Remember declaration scope qualifiers in the AST. Imposes no memory overhead
on unqualified declarations.
Patch by Enea Zaffanella! Minimal adjustments: allocate the ExtInfo nodes
with the ASTContext and delete them during Destroy(). I audited a bunch of
Destroy methods at the same time, to ensure that the correct teardown was
being done.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98540
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Mon, 15 Mar 2010 09:07:48 +0000 (09:07 +0000)]
Remember access paths for visible conversion decls.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98539
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 14 Mar 2010 12:55:35 +0000 (12:55 +0000)]
Fix thinko and enable clang build on mingw again (hopefully)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98492
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 08:35:19 +0000 (08:35 +0000)]
Add EmitString helper method
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98488
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 07:55:43 +0000 (07:55 +0000)]
Unbreak last commit. This should have been part of r98478.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98480
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 07:38:15 +0000 (07:38 +0000)]
Pass file string by reference
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98478
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 07:15:57 +0000 (07:15 +0000)]
Path related cleanup. Remove unnecessary variables.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98473
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 07:06:50 +0000 (07:06 +0000)]
Use makeAbsolute()
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98472
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 06:48:05 +0000 (06:48 +0000)]
Move to anonymous namespace
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98469
91177308 -0d34-0410-b5e6-
96231b3b80d8
David Chisnall [Sat, 13 Mar 2010 22:20:45 +0000 (22:20 +0000)]
Fixed copy-and-paste error causing categories to contain the protocols declared on the class, not the protocols declared on the category.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98455
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 13 Mar 2010 21:22:49 +0000 (21:22 +0000)]
Revert 98439. There is a bad race condition in sys::Path::makeUnique on win32.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98452
91177308 -0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Sat, 13 Mar 2010 20:14:52 +0000 (20:14 +0000)]
Add missing space.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98448
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Sat, 13 Mar 2010 18:23:07 +0000 (18:23 +0000)]
Give explicit template instantiations weak ODR linkage. Former
iterations of this patch gave explicit template instantiation
link-once ODR linkage, which permitted the back end to eliminate
unused symbols. Weak ODR linkage still requires the symbols to be
generated.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98441
91177308 -0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Sat, 13 Mar 2010 18:12:56 +0000 (18:12 +0000)]
Fix PR6562. If a type is dependent, we don't know if it will have implicit
destructors.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98440
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 13 Mar 2010 13:05:20 +0000 (13:05 +0000)]
Make getTemporaryPath a static member of CIndexer and use it to replace tmpnam calls.
This fixes linker warnings on linux.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98439
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 13 Mar 2010 12:06:51 +0000 (12:06 +0000)]
Use raw_ostream instead of sprintf.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98438
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 13 Mar 2010 11:34:41 +0000 (11:34 +0000)]
Simplify code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98437
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Sat, 13 Mar 2010 10:17:05 +0000 (10:17 +0000)]
Use SmallString instead of SmallVector
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98436
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Sat, 13 Mar 2010 08:53:33 +0000 (08:53 +0000)]
No need to call setIdentifierInfo() after LookUpIdentifierInfo() which LookUpIdentifierInfo() will automatically do
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98435
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Sat, 13 Mar 2010 03:49:57 +0000 (03:49 +0000)]
Re-revert the explicit template instantiation linkage patch. I am beginning to look incompetent
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98425
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Sat, 13 Mar 2010 03:14:19 +0000 (03:14 +0000)]
Reinstate patch to turn explicit template instantiations into weak symbols
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98424
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sat, 13 Mar 2010 02:50:34 +0000 (02:50 +0000)]
Implement several CIndex functions for constructing USRs from C-strings instead of AST elements.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98421
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 23:14:13 +0000 (23:14 +0000)]
Check compatibility of vector types using their canonicalizations.
Fixes an assertion arising C overload analysis, but really I can't imagine
that this wouldn't cause a thousand other uncaught failures.
Fixes PR6600.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98400
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Fri, 12 Mar 2010 22:55:16 +0000 (22:55 +0000)]
Allow users to set CPPFLAGS and CXXFLAGS on the make command line.
Tested: make CPPFLAGS=-m64 CXXFLAGS=-m64 -j8 && (cd tools/clang;make test)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98399
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 22:22:36 +0000 (22:22 +0000)]
Use llvm::SmallVector instead of std::vector.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98397
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 12 Mar 2010 21:40:43 +0000 (21:40 +0000)]
Fix a rare corner case bug which exposed a serious block API generation
when initialized variable is a byref block variable and is referenced recursively
in the initializer (you guessed it, it is block implementation of
fibonacci number). Fix, on the other hand is trvial, by generating the
API for byref variable before API for its initializer. We will have this
test added to our internal test suite as a clang-style test is not possible
due to very convoluted IR sequence. Fixes radar
7745514 .
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98393
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 12 Mar 2010 21:04:27 +0000 (21:04 +0000)]
If main file name is empty then use "<unknown>".
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98385
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 20:02:47 +0000 (20:02 +0000)]
Preserve the inherited-default-argument bit through instantiation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98375
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 18:31:32 +0000 (18:31 +0000)]
Remember whether a ParmVarDecl was spelled with a default argument or
whether it inherited one from a previous declaration.
Patch by Enea Zaffanella!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98362
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 16:46:36 +0000 (16:46 +0000)]
Fix grammar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98352
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 12:01:19 +0000 (12:01 +0000)]
Make IdentifierTable::get(StringRef) "primary" (no functionality change)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98347
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 11:27:37 +0000 (11:27 +0000)]
Reintroduce r98340 and r98341 now without copy/paste errors.
Thanks to Ben for pointing this out.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98345
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 11:00:51 +0000 (11:00 +0000)]
Back out r98340 abd r98341
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98344
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 10:32:27 +0000 (10:32 +0000)]
Add IdentifierTable::get() overload and start using it
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98343
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Fri, 12 Mar 2010 10:20:09 +0000 (10:20 +0000)]
fix PR6584: __SSE3__ not defined with -mss3
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98342
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 10:17:07 +0000 (10:17 +0000)]
Switch parameter order for consistency (no functionality change)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98341
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 10:14:26 +0000 (10:14 +0000)]
Add keywords using StringRef
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98340
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 09:33:31 +0000 (09:33 +0000)]
Cleanup using StringRef
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98339
91177308 -0d34-0410-b5e6-
96231b3b80d8
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 08:23:34 +0000 (08:23 +0000)]
Switch over IdentifierInfoLookup to StringRef
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98337
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 07:11:26 +0000 (07:11 +0000)]
Improve the unused-value check to look into comma expressions and filter out
voids in sub-expressions. Patch by Mike M!
Fixes PR4806.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98335
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Fri, 12 Mar 2010 05:28:07 +0000 (05:28 +0000)]
More this adjustment simplification.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98333
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 12 Mar 2010 05:13:59 +0000 (05:13 +0000)]
Revert the linkage change for explicit template instantiations; something is amiss
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98332
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Fri, 12 Mar 2010 05:02:01 +0000 (05:02 +0000)]
Remove OldOffset.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98331
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Fri, 12 Mar 2010 04:55:20 +0000 (04:55 +0000)]
Remove debug output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98330
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Fri, 12 Mar 2010 04:54:20 +0000 (04:54 +0000)]
Begin simplifying handling of thunks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98329
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 12 Mar 2010 04:49:06 +0000 (04:49 +0000)]
Give explicit template instantiations weak linkage (but don't defer
them). Fixes PR6578.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98328
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 04:21:28 +0000 (04:21 +0000)]
Extend the builtin syntax to allow address-space qualifiers on pointers and
references. Based on a patch by Arnaud de Grandmaison!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98327
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 02:31:10 +0000 (02:31 +0000)]
Split Sema::ActOnProperty() into two recursive functions to clearly separate
the handling of class extensions from other cases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98326
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 12 Mar 2010 01:22:33 +0000 (01:22 +0000)]
Add SSE4 packed integer comparisons and corresponding intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98323
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 01:20:21 +0000 (01:20 +0000)]
Add an extra test to this test-case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98322
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 12 Mar 2010 01:19:31 +0000 (01:19 +0000)]
Implement basic support for friend types and functions in non-dependent
contexts.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98321
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 00:49:00 +0000 (00:49 +0000)]
Fix 80 col violations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98320
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 00:46:40 +0000 (00:46 +0000)]
Move 'ActOn' methods to the beginning of the file
so we can clearly see the parser entry points.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98319
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 00:38:40 +0000 (00:38 +0000)]
Update CMake build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98318
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 12 Mar 2010 00:38:38 +0000 (00:38 +0000)]
Split Sema logic for ObjC @property and @synthesize into
a separate file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98317
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Thu, 11 Mar 2010 23:50:18 +0000 (23:50 +0000)]
Integer array extraction for sse4.1.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98305
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Thu, 11 Mar 2010 23:36:29 +0000 (23:36 +0000)]
Add packed integer array insertion.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98299
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 11 Mar 2010 20:01:48 +0000 (20:01 +0000)]
Keep track of Record context to ensure that record elements are properly nested in debug info.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98283
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 11 Mar 2010 19:44:54 +0000 (19:44 +0000)]
For ivars created using @synthesize, set their DeclContext to be
the @implementation (instead of the @interface) and actually add
the ivar to the DeclContext (which we weren't doing before).
This allows us to simplify ASTContext::CollectNonClassIvars() by
removing ASTContext::CollectProtocolSynthesizedIvars(). Now all
ivars can be found by either inspecting the ObjCInterfaceDecl and
its companion ObjCImplementationDecl.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98280
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 11 Mar 2010 19:43:18 +0000 (19:43 +0000)]
Warn about comparing an unsigned expression with 0 in tautological ways.
Patch by mikem!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98279
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 11 Mar 2010 19:33:57 +0000 (19:33 +0000)]
Remember the PR number.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98276
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Thu, 11 Mar 2010 19:32:38 +0000 (19:32 +0000)]
Implement -Wmissing-field-initializers. Patch by mikem!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98275
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 11 Mar 2010 18:23:02 +0000 (18:23 +0000)]
Use -emit-llvm-only, to avoid leaving a temp around.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98267
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 11 Mar 2010 18:20:03 +0000 (18:20 +0000)]
Add tentative support for accessing local variables with
external linkage (static, extern, etc.) in blocks in
rewriter. wip.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98265
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 11 Mar 2010 18:19:55 +0000 (18:19 +0000)]
fix PR6433, crash on va_arg of typedef.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98264
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 11 Mar 2010 18:04:58 +0000 (18:04 +0000)]
Driver: Free Action objects.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98263
91177308 -0d34-0410-b5e6-
96231b3b80d8