aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-01-02Add a couple more tests for coverage.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92430 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-02Get rid of more unnecessary code.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92429 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-02Get rid of some unnecessary code.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92428 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-02Eliminate dead code.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92424 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-02Speculative MSVC fix.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92421 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-02Move address points to CGVtableInfo, no functionality change.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92420 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-02Correctly pass VTT parameters to constructors and destructors. The VTTs ↵Anders Carlsson
aren't yet used in the ctors/dtors, but that will follow. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92409 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-01Move a few more functions away from CGCXX and to CGClass and CGExprCXX.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92399 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-01Make sure that the search for visible declarations looks into the semantic ↵Douglas Gregor
parents of out-of-line function contexts git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92397 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-01Fix typo test RUN linesDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92396 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-01Fix last patch, catch of reference to non-pointer.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92386 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-01Fix catching a reference to a pointer.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92385 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-01When typo correction for an id-expression finds a type (or Objective-CDouglas Gregor
class), provide a suggestion for the type or class found. However, since we can't recover properly in this case, don't provide a fix-it hint. Example: test/FixIt/typo.m:8:3: error: use of undeclared identifier 'NSstring'; did you mean 'NSString'? NSstring *str = @"A string"; ... ^ 1 diagnostic generated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92379 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-01Typo correction for C99 designated field initializers, e.g.,Douglas Gregor
test/FixIt/typo.c:19:4: error: field designator 'bunds' does not refer to any field in type 'struct Window'; did you mean 'bounds'? .bunds. ^~~~~ bounds git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92376 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31If the key function of a record is inline, then the RTTI data should have ↵Anders Carlsson
weak_odr linkage. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92371 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31It's OK for a return type to be incomplete if it's being defined.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92367 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Make sure that an overriding return type is complete before checking if it's ↵Anders Carlsson
covariant. Fixes PR5920. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92365 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Remove rtti.cpp, it's very fragile and has been marked XFAIL for a while ↵Anders Carlsson
now. Between rtti-layout.cpp and rtti-linkage.cpp, RTTI testing should be covered. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92361 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31More RTTI builder cleanup.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92360 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Avoid an unnecessary copy of Predefines. getMemBufferCopy does the null ↵Benjamin Kramer
termination for us. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92358 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Convert to StringRef, avoid a memcpy in the common case.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92357 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Typo correction for C++ base and member initializers, e.g.,Douglas Gregor
test/FixIt/typo.cpp:41:15: error: initializer 'base' does not name a non-static data member or base class; did you mean the base class 'Base'? Derived() : base(), ^~~~ Base test/FixIt/typo.cpp:42:15: error: initializer 'ember' does not name a non-static data member or base class; did you mean the member 'member'? ember() { } ^~~~~ member git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92355 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Add another typo test for nested-name-specifiersDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92351 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Typo correction for identifiers within nested name specifiers, e.g.,Douglas Gregor
typo.cpp:18:1: error: use of undeclared identifier 'other_std'; did you mean 'otherstd'? other_std::strng str1; ^~~~~~~~~ otherstd git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92350 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Typo correction for template names, e.g.,Douglas Gregor
typo.cpp:27:8: error: no template named 'basic_sting' in namespace 'std'; did you mean 'basic_string'? std::basic_sting<char> b2; ~~~~~^~~~~~~~~~~ basic_string git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92348 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Typo correction for member access into classes/structs/unions, e.g.,Douglas Gregor
s.fnd("hello") git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92345 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Let constraint manager inform checkers that some assumption logic has happend.Zhongxing Xu
Add new states for symbolic regions tracked by malloc checker. This enables us to do malloc checking more accurately. See test case. Based on Lei Zhang's patch and discussion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92342 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31Implement typo correction for id-expressions, e.g.,Douglas Gregor
typo.cpp:22:10: error: use of undeclared identifier 'radious'; did you mean 'radius'? return radious * pi; ^~~~~~~ radius This was super-easy, since we already had decent recovery by looking for names in dependent base classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92341 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-31improve diagnostics for case when a field type is unknown byChris Lattner
not emitting a follow-on error about 'int', which the user never wrote. PR5924. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92339 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Fix a bunch of bugs with VMI RTTI building, and add a whole bunch of tests.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92319 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30The element type should also be canonicalized. Add a case for VariableArrayType.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92318 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30testcase for previous patch!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92317 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30when making a decl for __builtin_fabsf() make sure toChris Lattner
attach the appropriate attributes to it. I don't think this manifests as any real change though, we're still not getting the right LLVM IR attributes out of codegen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92316 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Fix a comment.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92314 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30fix PR5917, L'x' was getting the wrong type in c++ mode. PerChris Lattner
C++2.13.2p2: "A wide-character literal has type wchar_t" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92313 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30When rewriting a __block declaration, use a suitable API to get location ofFariborz Jahanian
the declaration in the presence of an initializer macro. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92312 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30remove extraneous #includeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92310 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Typo correction for type names when they appear in declarations, e.g., givenDouglas Gregor
tring str2; we produce the following diagnostic + fix-it: typo.cpp:15:1: error: unknown type name 'tring'; did you mean 'string'? tring str2; ^~~~~ string To make this really useful, we'll need to introduce typo correction in many more places (wherever we do name lookup), and implement declaration-vs-expression heuristics that cope with typos better. However, for now this will handle the simple cases where we already get good "unknown type name" diagnostics. The LookupVisibleDecls functions are intended to be used by code completion as well as typo correction; that refactoring will happen later. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92308 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Fix typo in commentDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92307 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Remove an duplicated #include.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92306 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Simplify code by using an equivalent template class.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92305 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30More fixes to the handling of CVR-comparisons on array types. Adds a method toChandler Carruth
QualType to get CVR-qualifiers through array types, and switches the primary comparison methods to use it. This may allow simplifying some of the callers of getUnqualifiedArrayType. Also fix the normalizing of CV-qualification during template deduction to normalize through arrays and allow a more qualified deduced array type. This fixes PR5911. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92289 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Add base class checks.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92286 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Add more vtable tests.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92285 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30More RTTI cleanup, test that RTTI classes have the correct vtables.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92284 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Typedefs can be redeclared. That seems like something we should record inJohn McCall
the AST lest we run into some crazy canonicalization bug like PR5874. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92283 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Test for PR5908.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92282 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-30Make sure to explicitly pass type/value dependence to Expr constructor. ThisEli Friedman
caught several cases where we were not doing the right thing. I'm not completely sure all cases are being handled correctly, but this should be an improvement. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92281 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-29Match gcc and treat vector types as fundamental types.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92278 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-29Handle enum types as well.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92276 91177308-0d34-0410-b5e6-96231b3b80d8