Commit Graph

13835 Commits

Author SHA1 Message Date
Argyrios Kyrtzidis e55f6ff3de Fix bug in the new PCHReader constructor. PP and Context should be initialized to 0.
llvm-svn: 73762
2009-06-19 07:55:35 +00:00
Argyrios Kyrtzidis 0ec73555a8 Tiny correction on the command-line source location parser.
llvm-svn: 73758
2009-06-19 06:32:46 +00:00
Zhongxing Xu 54fb536b5c A further step of r73690: associate the cast-to type with the created symbol,
because the type of the symbol is used to create the default range. We need the
sign to be consistent.

llvm-svn: 73756
2009-06-19 06:00:32 +00:00
Zhongxing Xu cc45762253 If the SymbolicRegion was cast to another type, use that type to create the
ElementRegion.

llvm-svn: 73754
2009-06-19 04:51:14 +00:00
Argyrios Kyrtzidis 366985d5eb Make changes to PCHReader to allow reading a PCH file without having a pre-initialized Preprocessor.
-Introduce 'PCHReaderListener' which is an abstract interface for getting various information from the PCHReader.
-If PCHReader is constructed without a Preprocessor, it can still load the file and invoke the callbacks of PCHReaderListener.
-If PCHReader is constructed with an initialized Preprocessor, PCHValidator is used as a PCHReaderListener to validate the contents of the PCH file against the given Preprocessor.

llvm-svn: 73741
2009-06-19 00:03:23 +00:00
Ted Kremenek 095f1a9848 Move clients over from using GRStateManager::BindXXX and friends to
GRState->bindXXX and friends (and constify some arguments along the way).

llvm-svn: 73740
2009-06-18 23:58:37 +00:00
Ted Kremenek 4c6a367182 Remove GRStateManager& field from SimpleConstraintManager.
llvm-svn: 73735
2009-06-18 23:20:05 +00:00
Ted Kremenek f9906843b7 libAnalysis:
- Remove the 'isFeasible' flag from all uses of 'Assume'.
- Remove the 'Assume' methods from GRStateManager.  Now the only way to
  create a new GRState with an assumption is to use the new 'assume' methods
  in GRState.

llvm-svn: 73731
2009-06-18 22:57:13 +00:00
Douglas Gregor 1e09bf83c0 Some cleanups suggested by Chris
llvm-svn: 73713
2009-06-18 18:45:36 +00:00
Douglas Gregor 78bd61f661 Move the static DeclAttrs map into ASTContext. Fixes <rdar://problem/6983177>.
llvm-svn: 73702
2009-06-18 16:11:24 +00:00
Douglas Gregor e1d15c80a3 Add some missing CMake dependencies
llvm-svn: 73700
2009-06-18 15:05:47 +00:00
Zhongxing Xu b21175ccbe Modify test case comments.
llvm-svn: 73691
2009-06-18 06:49:35 +00:00
Zhongxing Xu cea6578078 When casting region, if we do not create an element region, record the cast-to
type. 

When retrieving the region value, if we are going to create a symbol value, use
the cast-to type if possible.

llvm-svn: 73690
2009-06-18 06:29:10 +00:00
Chris Lattner e7e659431c Fix a crash that can occur when a #pragma handler eats to the end of the
line, and when the pragma is at the end of a file.  In this case, the last
token consumed could pop the lexer, invalidating CurPPLexer.  Thanks to
Peter Thoman for pointing it out.

llvm-svn: 73689
2009-06-18 05:55:53 +00:00
Zhongxing Xu dd19e15fe2 More GRStateRef removal fix.
llvm-svn: 73674
2009-06-18 03:42:19 +00:00
Eli Friedman c619d6fab5 Add a target triple to a couple of tests which depend on it. Reported
by Mark Cianciosa on cfe-dev.

llvm-svn: 73672
2009-06-18 02:04:19 +00:00
Ted Kremenek 6a667ab710 Remove GRStateRef.
llvm-svn: 73670
2009-06-18 01:33:24 +00:00
Ted Kremenek d93c6e3fd6 Remove more dependencies on GRStateRef. As a consequence, we can now
pretty-print a GRState object anywhere it is referenced (instead of
needing a GRStateRef of a GRStateManager handy).

llvm-svn: 73669
2009-06-18 01:23:53 +00:00
Ted Kremenek 89a303caac Remove another dependency on GRStateRef.
llvm-svn: 73667
2009-06-18 00:49:02 +00:00
Douglas Gregor f187420feb Diagnose class members that shadow a template parameter. Fixes
<rdar://problem/6952203>. 

To do this, we actually remove a not-quite-correct optimization in the
C++ name lookup routines. We'll revisit this optimization for the
general case once more C++ is working.

llvm-svn: 73659
2009-06-17 23:37:01 +00:00
Douglas Gregor 4dd5b57ef4 Fix regression testing in Xcode, again
llvm-svn: 73658
2009-06-17 23:35:04 +00:00
Argyrios Kyrtzidis 9941a4d314 Fix some erroneous comments due to trigger-happy copy&paste.
No functionality change.

llvm-svn: 73657
2009-06-17 23:19:02 +00:00
Argyrios Kyrtzidis 7bcce49e04 Factor out some common code into Sema::EnterDeclaratorContext/ExitDeclaratorContext.
llvm-svn: 73655
2009-06-17 23:15:40 +00:00
Argyrios Kyrtzidis 3df1978270 Implement correct name lookup inside an initializer of a C++ class static data member.
Fixes "test/CXX/basic/basic.lookup/basic.lookup.unqual/p13.cpp" test case.

llvm-svn: 73652
2009-06-17 22:50:06 +00:00
Argyrios Kyrtzidis c4b766bc65 Move CXXMethodDecl::OutOfLineDefinition into Decl::OutOfLine.
llvm-svn: 73651
2009-06-17 22:49:50 +00:00
Fariborz Jahanian b1743254e7 Removed deadcode related to addition of constructor
decls to a class.

llvm-svn: 73650
2009-06-17 22:44:31 +00:00
Steve Naroff fb4330f255 First step toward fixing <rdar://problem/6613046> refactor clang objc type representation.
Add a type (ObjCObjectPointerType) and remove a type (ObjCQualifiedIdType).

This large/tedious patch is just a first step. Next step is to remove ObjCQualifiedInterfaceType. After that, I will remove the magic TypedefType for 'id' (installed by Sema). This work will enable various simplifications throughout clang (when dealing with ObjC types). 

No functionality change.

llvm-svn: 73649
2009-06-17 22:40:22 +00:00
Ted Kremenek b35e2caab5 Remove more uses of GRStateRef.
llvm-svn: 73648
2009-06-17 22:28:13 +00:00
Ted Kremenek d0d4cfc8e7 Class 'Environment' no longer should subclass llvm::FoldingSetNode.
Environment hasn't been uniqued in a FoldingSet for some time, so this
was just wasting a pointer in GRState.

llvm-svn: 73645
2009-06-17 22:06:03 +00:00
Ted Kremenek 609df30929 Start moving in the direction of removing GRStateRef. Now each
GRState object has a direct reference to its GRStateManager, making
the functionality of GRStateRef redunandant.  This will lead to some
nice API cleanup and code shrinking across libAnalysis.

llvm-svn: 73644
2009-06-17 22:02:04 +00:00
Douglas Gregor 758a869b14 Support dependent extended vector types and template instantiation
thereof. Patch by Anders Johnsen!

llvm-svn: 73641
2009-06-17 21:51:59 +00:00
Daniel Dunbar 3f460e84d0 Testing improvements:
- Make python test runner force COLUMNS=0 to increase determinism.

 - Substitute clang-cc as we do for clang.

 - Improved detection of Ctrl-C.

 - Honor CLANG and CLANGCC environment variables.

 - Add proper command line arguments to TestRunner.py (see --help)

llvm-svn: 73640
2009-06-17 21:33:37 +00:00
Douglas Gregor 791505b5ea Search path for 64-bit Ubuntu Linux, from Anders Johnsen
llvm-svn: 73637
2009-06-17 21:18:36 +00:00
Fariborz Jahanian ccd44a5072 Added missing @endcode.
llvm-svn: 73629
2009-06-17 20:24:52 +00:00
Douglas Gregor 6b6bba4a20 Diagnose the use of attributes on namespace aliases, from Anis Ahmad
llvm-svn: 73626
2009-06-17 19:49:00 +00:00
Douglas Gregor 4bf38785b1 Make sure that .td and .def files get into the list of headers in a CMake build, for use in Xcode and Visual Studio
llvm-svn: 73623
2009-06-17 18:31:02 +00:00
Chris Lattner a0e4dedf9e link in targets
llvm-svn: 73619
2009-06-17 17:25:50 +00:00
Chris Lattner d15131020d Remove old #includes
llvm-svn: 73618
2009-06-17 17:23:16 +00:00
Douglas Gregor d04acaad93 Use env properly in test/Driver/analyze.c
llvm-svn: 73609
2009-06-17 15:41:17 +00:00
Chris Lattner 94dfae248b Update clang for the add ->add/fadd split. Likewise for sub and mul.
llvm-svn: 73604
2009-06-17 06:36:24 +00:00
Anders Carlsson 58a9b0eafe Remove all non-const getters from TemplateArgumentList.
llvm-svn: 73589
2009-06-17 00:35:01 +00:00
Fariborz Jahanian 5b130a56fd Place -Wreadonly-setter-attrs under -Wmost option group.
llvm-svn: 73585
2009-06-17 00:06:21 +00:00
Douglas Gregor dca24385f3 If any tests fail, the test runner returns a status code of 1
llvm-svn: 73584
2009-06-16 23:40:23 +00:00
Douglas Gregor ffbc629cd7 Make these driver tests do the right thing even when MACOSX_DEPLOYMENT_TARGET is set.
llvm-svn: 73583
2009-06-16 23:37:56 +00:00
Daniel Dunbar 10978e414c Stub out printing of the thread model with -v.
- Turns out libstdcxx greps for this in configure.

llvm-svn: 73582
2009-06-16 23:32:58 +00:00
Daniel Dunbar 1b3ec3a000 Fake support for -print-multi-*
- I think we will eventually need to support this for realz, and some build
   processes seem to depend on these options.

llvm-svn: 73581
2009-06-16 23:25:22 +00:00
Anders Carlsson 655908aaf7 Since integral template arguments can't have dependent types we don't need an extra pass to set the right APSInt bit width/signedness.
llvm-svn: 73580
2009-06-16 23:08:29 +00:00
Ted Kremenek b538e7b64f Add utility method GRStateRef::makeWithStore().
llvm-svn: 73576
2009-06-16 22:55:21 +00:00
Anders Carlsson 3a106e0b1c Make DeduceNonTypeTemplateArgument take an APSInt instead of an APInt.
llvm-svn: 73574
2009-06-16 22:44:31 +00:00
Ted Kremenek 4533a55696 RegionStoreManager:
- Add "sections" to RegionStoreManager.cpp to delineate functionality.
- Add new function "CreateFieldsOnlyRegionStoreManager" that uses the new
  RegionStoreFeatures class to use a reduced set of features from
  RegionStoreManager (in this case, only field-sensitivity). This isn't
  completely hooked up yet.

llvm-svn: 73572
2009-06-16 22:36:44 +00:00