]>
granicus.if.org Git - clang/log
Ted Kremenek [Thu, 9 Apr 2009 18:22:40 +0000 (18:22 +0000)]
Fix grammar. Bold face feature points.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68720
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 18:20:08 +0000 (18:20 +0000)]
More cleanup.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68719
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 18:17:39 +0000 (18:17 +0000)]
More cleanups.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68718
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 18:08:18 +0000 (18:08 +0000)]
Add link from internals manual to PTH documentation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68717
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 18:03:21 +0000 (18:03 +0000)]
Minor cleanups. Added a blurb about the advantages of fast PTH file generation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68716
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 9 Apr 2009 17:29:08 +0000 (17:29 +0000)]
Simple DeclContext's internal representation by always storing a
StoredDeclsMap, instead of using the it's-an-array-or-its-a-map
trick. I'll verify that performance isn't impacted later; for now, I
need the common representation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68715
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 16:46:55 +0000 (16:46 +0000)]
Remove SVal::MakeZero and replace it with ValueManager::makeZeroVal.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68711
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 9 Apr 2009 16:42:50 +0000 (16:42 +0000)]
Add more builtin definitions, including strcmp.
- PR3964.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68710
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 16:13:17 +0000 (16:13 +0000)]
analyzer: Introduce a new class, ValueManager, that serves as an aggregate
"manager of symbolic values", wrapping BasicValueFactory, SymbolManager, and
MemRegionManager. While these individual managers nicely separate functionality
in the analyzer, constructing symbolic values can sometimes be cumbersome
because it requires using multiple managers at once. The goal of this class is
to create some factory methods to create SVals that require the use of these
different managers, thus (hopefully) simplifying the analyzer API for clients.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68709
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 14:06:37 +0000 (14:06 +0000)]
Update analyzer build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68707
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 07:39:46 +0000 (07:39 +0000)]
stop using loc::SymbolVal and clean up code with new API.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68703
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 07:04:45 +0000 (07:04 +0000)]
clean up code with new API.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68701
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 07:01:16 +0000 (07:01 +0000)]
clean up code with new API.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68700
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 06:56:25 +0000 (06:56 +0000)]
clean up code with new API.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68699
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 06:53:24 +0000 (06:53 +0000)]
clean up code with new API.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68698
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 06:49:52 +0000 (06:49 +0000)]
stop using loc::SymbolVal.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68697
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 06:43:44 +0000 (06:43 +0000)]
stop using loc::SymbolVal.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68696
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 06:41:51 +0000 (06:41 +0000)]
stop using loc::SymbolVal.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68695
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 06:35:30 +0000 (06:35 +0000)]
clean up code with new API.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68694
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 06:32:20 +0000 (06:32 +0000)]
clean up code with new API.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68693
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 06:30:17 +0000 (06:30 +0000)]
Add a new method because sometimes the type of the conjured symbol is not the
type of the expression where we create the symbol.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68692
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 06:18:05 +0000 (06:18 +0000)]
make a conjured symbol as the original code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68691
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 06:03:54 +0000 (06:03 +0000)]
clean up code with new API.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68687
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 06:02:06 +0000 (06:02 +0000)]
Fix a null pointer dereference error due to state caching in a loop involving
sending a message to a nil receiver.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68686
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 9 Apr 2009 05:57:11 +0000 (05:57 +0000)]
Create a symbolic region instead of a loc::SymbolVal. This is a continued step
to eliminate the use of loc::SymbolVal.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68685
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 05:45:56 +0000 (05:45 +0000)]
GRExprEngine: Don't try to reason about the size of 'void' for the return type
of messages sent to nil.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68683
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 05:34:31 +0000 (05:34 +0000)]
Another ParentMap bug: only the right side of a comma expression is consumed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68680
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 04:06:51 +0000 (04:06 +0000)]
Fix another regression introduced by changes to the analyzer's reasoning about
nil receivers in message expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68672
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 9 Apr 2009 00:51:16 +0000 (00:51 +0000)]
Make -include, -imacros paths absolute in Frontend.
- Otherwise paths will be resolved relative to the main input file,
which is incorrect.
- I don't know how to make a reasonable test case for this with our
testing infrastructure.
- PR3395
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68665
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Apr 2009 00:00:02 +0000 (00:00 +0000)]
Refactor/cleanup reasoning of nil receivers in message expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68661
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Apr 2009 23:54:23 +0000 (23:54 +0000)]
Driver: Split out CPP specific options for clang so that we don't end
up adding them twice when running with -no-integrated-cpp or
-save-temps.
- <rdar://problem/
6766636 > -save-temps falls over with prefix headers
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68660
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Wed, 8 Apr 2009 23:52:26 +0000 (23:52 +0000)]
Fix <rdar://problem/
6770998 > make cast of super illegal (again:-)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68659
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 8 Apr 2009 23:13:16 +0000 (23:13 +0000)]
Use the new EmitCallArgs function. No indented functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68652
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Apr 2009 23:02:51 +0000 (23:02 +0000)]
Force triple for these tests.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68651
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 22:38:30 +0000 (22:38 +0000)]
add driver support for -Wno-trigraphs
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68650
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 22:37:15 +0000 (22:37 +0000)]
add support for -Wtrigraphs and -Wno-trigraphs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68649
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 8 Apr 2009 21:54:52 +0000 (21:54 +0000)]
Added a FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68646
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 20:57:57 +0000 (20:57 +0000)]
add driver headers to xcode proj
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68642
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 20:57:44 +0000 (20:57 +0000)]
implement -imacros support in driver.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68641
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 20:53:24 +0000 (20:53 +0000)]
finish the implementation of -imacros. The driver still needs to be hooked up.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68640
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 8 Apr 2009 20:47:54 +0000 (20:47 +0000)]
Add code for emitting call arguments (not used yet).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68639
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 8 Apr 2009 20:31:57 +0000 (20:31 +0000)]
We weren't generating correct code for calls to variadic member functions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68635
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Apr 2009 20:18:15 +0000 (20:18 +0000)]
Fix buffer overrun when laying out synthesized ivars.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68634
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 20:15:42 +0000 (20:15 +0000)]
According to the GCC man page, all -imacros are included before any -include's.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68633
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 20:10:57 +0000 (20:10 +0000)]
properly escape filenames when generating implicit #includes, this handles
things like " in paths etc. Found by inspection.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68632
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 8 Apr 2009 19:50:10 +0000 (19:50 +0000)]
Fixed a problem using property syntax on a 'super'
used as receiver.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68631
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 8 Apr 2009 19:47:04 +0000 (19:47 +0000)]
Use presumed location to get line number info.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68630
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 8 Apr 2009 18:51:08 +0000 (18:51 +0000)]
Enhance analyzer reasoning about sending messages to nil. A nil receiver returns 0 for scalars of size <= sizeof(void*).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68629
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 8 Apr 2009 18:49:36 +0000 (18:49 +0000)]
Fix bug in ParentMap::isConsumedExpr. A BinaryOperator always "consumes" the
value of its subexpressions unless it is a comma (in which case it doesn't
consume the left subexpression).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68628
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 18:46:40 +0000 (18:46 +0000)]
reject the #__include_macros directive unless it comes from the
predefines buffer.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68627
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 18:24:34 +0000 (18:24 +0000)]
Add initial support for -imacros. Right now it has the same semantics as
-include, but that will be fixed soon.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68625
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Apr 2009 18:03:55 +0000 (18:03 +0000)]
More fixes to builtin preprocessor defines.
- Add -static-define option driver can use when __STATIC__ should be
defined (instead of __DYNAMIC__).
- Don't set __OPTIMIZE_SIZE__ on Os, __OPTIMIZE_SIZE__ is tied to Oz.
- Set __NO_INLINE__ following GCC 4.2.
- Set __GNU_GNU_INLINE__ or __GNU_STDC_INLINE__ following GCC 4.2.
- Set __EXCEPTIONS for Objective-C NonFragile ABI.
- Set __STRICT_ANSI__ for standard conforming modes.
- I added a clang style test case in utils for this, but its not
particularly portable and I don't think it belongs in the test
suite.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68621
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Wed, 8 Apr 2009 17:05:15 +0000 (17:05 +0000)]
Sema::CheckConditionalOperands(): Soften pointer/integer mismatch from error->warning.
Fixes <rdar://problem/
6762239 > [sema] gcc incompatibility; error on incompatible operand types in ?:.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68617
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Apr 2009 16:23:09 +0000 (16:23 +0000)]
Make sure value is initialized when built w/o asserts.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68615
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 8 Apr 2009 15:21:36 +0000 (15:21 +0000)]
-Wmissing-prototypes shouldn't complain about main() missing a prototype.
Fixes <rdar://problem/
6759522 >
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68611
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Apr 2009 06:06:21 +0000 (06:06 +0000)]
Darwin ld: Unconditionally add -lstdc++ if we are pretending to be
g++.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68601
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 06:00:32 +0000 (06:00 +0000)]
use escapes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68600
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 05:50:25 +0000 (05:50 +0000)]
some minor edits
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68599
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Apr 2009 05:11:16 +0000 (05:11 +0000)]
Make debug info work when using -save-temps.
- This is pretty ugly, but the most obvious solution. Chime in if you
have a nicer one.
- The problem is that with -save-temps, clang-cc has no idea what the
name of the original input file is. However, the user expects to be
able to set breakpoints based on the input file name.
- We support this by providing a new option -main-file-name (similar
to -dumpbase used by gcc) which allows the driver to pass in the
original file name.
- <rdar://problem/
6753383 > building with clang using --save-temps
gets the compile unit name from the .i file...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68595
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 8 Apr 2009 05:07:30 +0000 (05:07 +0000)]
Initial draft of PTH internals.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68594
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 8 Apr 2009 04:48:15 +0000 (04:48 +0000)]
Add a destination type argument to EmitConstantExpr. This will be used for when the destination has a reference type. (No functionality change yet)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68593
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Apr 2009 04:21:03 +0000 (04:21 +0000)]
Implementation definition of interfaces with __objc_exception attribute.
- Complete <rdar://problem/
6635883 > Support __objc_exception__
attribute
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68591
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sanjiv Gupta [Wed, 8 Apr 2009 04:16:39 +0000 (04:16 +0000)]
Pointer width on targets like PIC16 is 16-bit, while the valid index size to GEP is only 32 or 64. So promote index to 32 in such cases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68590
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 03:47:39 +0000 (03:47 +0000)]
remove fixme!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68589
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 03:36:03 +0000 (03:36 +0000)]
fix typo, noticed by Gabor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68587
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Apr 2009 03:33:43 +0000 (03:33 +0000)]
improve compatibility with VC+, patch by John Thompson!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68586
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 8 Apr 2009 03:07:17 +0000 (03:07 +0000)]
New static analyzer check by Nikita Zhuk!
"The attached patch generates warnings of cases where an ObjC message is sent to
a nil object and the size of return type of that message is larger than the size
of void pointer. This may result in undefined return values as described in PR
2718. The patch also includes test cases."
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68585
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Apr 2009 03:03:23 +0000 (03:03 +0000)]
Set __PIC__ (more) correctly.
- Add -pic-level clang-cc option to specify the value for the define,
updated driver to pass this.
- Added __pic__
- Added OBJC_ZEROCOST_EXCEPTIONS define while I was here (to match gcc).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68584
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 8 Apr 2009 02:55:55 +0000 (02:55 +0000)]
Don't assume that a block always has a FunctionProtoType. Fixes rdar://
6768379 .
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68583
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Stump [Wed, 8 Apr 2009 02:07:04 +0000 (02:07 +0000)]
Add basic support for arm static analysis checking. Radar
6699395
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68582
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 23:51:44 +0000 (23:51 +0000)]
Driver: Fix forwarding of -fpascal-strings.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68570
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Tue, 7 Apr 2009 22:56:58 +0000 (22:56 +0000)]
Fix <rdar://problem/
6764172 > [sema] crash on invalid.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68568
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 22:36:33 +0000 (22:36 +0000)]
Visibility attributes should only be set on definition.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68561
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 22:13:21 +0000 (22:13 +0000)]
Driver: Fix forwarding of -{std,ansi,trigraphs} when there are
multiple instances of an option.
Also, removed direct -ansi support from clang-cc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68558
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 7 Apr 2009 22:10:22 +0000 (22:10 +0000)]
Shuffle some call code around. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68557
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 21:51:40 +0000 (21:51 +0000)]
Driver: Forward remaining -f options to clang manually.
- Groups are really just intended to hold inherent structure of the
options, not be abused for individual tool argument translation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68554
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 21:42:00 +0000 (21:42 +0000)]
Driver: Only forward last instance of -mmacosx-version-min= and
-isysroot to clang.
- Don't forward arbitrary -i* options to clang, just the ones we know
about.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68553
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 7 Apr 2009 21:25:06 +0000 (21:25 +0000)]
Now that we have __weak defined as attribute in all modes,
we must not issue gc-specific errors in non-gc mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68551
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 21:16:11 +0000 (21:16 +0000)]
Driver: Manually translate a number of -f with no- variants options to
clang.
- We will eventually want some more driver infrastructre for this
probably.
- For now, the clang-cc interface stays relatively the same, but we
don't accept multiple instances anymore, or the [no-] variants
directly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68550
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 21:08:57 +0000 (21:08 +0000)]
Driver: Add default for ArgList::hasFlag and simplify implementation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68549
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 7 Apr 2009 20:58:25 +0000 (20:58 +0000)]
Allow us to ask for the access specifier of a translation unit
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68548
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 7 Apr 2009 20:26:30 +0000 (20:26 +0000)]
Propagte -fvisibility to objc2's class symbols.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68543
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Tue, 7 Apr 2009 19:37:57 +0000 (19:37 +0000)]
Diagnose uses of function specifiers on declarations which don't declare
functions. Fixes PR3941.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68541
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 19:18:24 +0000 (19:18 +0000)]
Driver: Explicitly warn that -pg isn't supported (even though we
aren't failing the compilation).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68540
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 19:04:18 +0000 (19:04 +0000)]
Driver: Add 'q' flag for options which shouldn't be reported as unused.
- <rdar://problem/
6756295 > warning about '-dynamic' argument unused
during compilation seems incorrect
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68535
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 7 Apr 2009 18:53:24 +0000 (18:53 +0000)]
CFG: when there is not continue or break target, mark the CFG as bad.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68533
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 7 Apr 2009 18:53:02 +0000 (18:53 +0000)]
Remove some dead code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68532
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 7 Apr 2009 18:28:06 +0000 (18:28 +0000)]
Fixes method name lookup when method appears in
the base implementations (and not in
current implementation).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68527
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 7 Apr 2009 18:21:53 +0000 (18:21 +0000)]
Fix broken test case. I have no idea why this ever worked.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68526
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 18:21:47 +0000 (18:21 +0000)]
Driver: Fix a parsing bug where some options were matched
incorrectly. I'm blanking on the smartest way to write this search,
but we should just do the right thing when we move to TableGen.
- <rdar://problem/
6761194 > [driver] -Wextra-tokens isn't parsed
correctly
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68525
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 7 Apr 2009 18:18:09 +0000 (18:18 +0000)]
add a warning for this crazy case, as suggested by Eli.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68524
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 7 Apr 2009 17:20:56 +0000 (17:20 +0000)]
Move the internal DeclContext data structures into a separate header.
Simplify the addition of a case statement to a switch.
Fix -print-stats for attribute-qualified types.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68522
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 17:09:43 +0000 (17:09 +0000)]
Use %s in test, not hard coded name.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68521
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 7 Apr 2009 16:50:40 +0000 (16:50 +0000)]
Fariborz points out that weak is now defined to the attribute even
in C mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68520
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 7 Apr 2009 16:32:03 +0000 (16:32 +0000)]
XFAIL a failing test
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68519
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Tue, 7 Apr 2009 15:07:57 +0000 (15:07 +0000)]
Tweak Sema::ActOnInstanceMessage() to look for a class method when dealing with qualified id's. This change is motivated by our desire to not support the "Class<foo>" idiom. Note that the change makes perfect sense (since all ObjC classes are also id/instances).
This allow us to document a simple migration path...change "Class <foo>" to "id <foo>".
This effects:
- <rdar://problem/
6761939 > TASK: File source change radars for "qualified Class" errors
- <rdar://problem/
6761864 > Protocol qualified Class is unsupported
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68517
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 7 Apr 2009 14:26:58 +0000 (14:26 +0000)]
Update checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68516
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Tue, 7 Apr 2009 14:22:40 +0000 (14:22 +0000)]
Fix typo in newly added test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68515
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Tue, 7 Apr 2009 14:18:33 +0000 (14:18 +0000)]
Change the type of ObjC @ string constants (from NSConstantString->NSString).
This fixes <rdar://problem/
6757102 > clang type for @"xxx" is "NSConstantString *" (GCC type is "NSString *").
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68514
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Apr 2009 06:43:45 +0000 (06:43 +0000)]
Handle use side of __objc_exception__ attribute; when using an
exception with this attribute we don't need to emit a weak definition
for the exception type information.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68513
91177308 -0d34-0410-b5e6-
96231b3b80d8