]> granicus.if.org Git - clang/log
clang
16 years agoThe dtor CGObjCRuntime::~CGObjCRuntime() was implemented twice, once
Ted Kremenek [Wed, 9 Apr 2008 15:51:31 +0000 (15:51 +0000)]
The dtor CGObjCRuntime::~CGObjCRuntime() was implemented twice, once
in CGObjCGNU.cpp and once in CGObjCEtoile.cpp.  Moved its definition to
CGObjC.cpp.  This resolves a build error in Xcode, and also cleans things up.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49429 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd SemaDeclCXX.cpp to Xcode project.
Ted Kremenek [Wed, 9 Apr 2008 15:50:11 +0000 (15:50 +0000)]
Add SemaDeclCXX.cpp to Xcode project.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49428 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoMicro-optimization: Don't use ostringstream when using a C-string literal
Ted Kremenek [Wed, 9 Apr 2008 15:40:40 +0000 (15:40 +0000)]
Micro-optimization: Don't use ostringstream when using a C-string literal
will work just fine.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49427 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdded some boilerplate for emitting warnings from the CF-reference count checker.
Ted Kremenek [Wed, 9 Apr 2008 01:10:13 +0000 (01:10 +0000)]
Added some boilerplate for emitting warnings from the CF-reference count checker.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49414 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdded new "BugReporterHelper" class which is used by BugReporter to emit
Ted Kremenek [Wed, 9 Apr 2008 00:20:43 +0000 (00:20 +0000)]
Added new "BugReporterHelper" class which is used by BugReporter to emit
checker-specific diagnostics.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49412 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFor -emit-html, use the Rewriter to expand tabs.
Ted Kremenek [Tue, 8 Apr 2008 23:25:54 +0000 (23:25 +0000)]
For -emit-html, use the Rewriter to expand tabs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49409 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoDon't expand tabs in EscapeText, but rather expand them when writing out
Ted Kremenek [Tue, 8 Apr 2008 22:37:58 +0000 (22:37 +0000)]
Don't expand tabs in EscapeText, but rather expand them when writing out
the HTML file.  This should reduce the amount of memory pressure on the
rewriter for files that have a lot of tabs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49406 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd HTMLRewrite.h to Xcode project.
Ted Kremenek [Tue, 8 Apr 2008 22:31:28 +0000 (22:31 +0000)]
Add HTMLRewrite.h to Xcode project.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49405 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoWhen substituting tabs during HTMLification, only add " " when we are
Ted Kremenek [Tue, 8 Apr 2008 22:28:15 +0000 (22:28 +0000)]
When substituting tabs during HTMLification, only add " " when we are
"escaping" spaces.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49404 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoImprove range highlighting in HTMLDiagnostic to correctly highlight ranges
Ted Kremenek [Tue, 8 Apr 2008 21:29:14 +0000 (21:29 +0000)]
Improve range highlighting in HTMLDiagnostic to correctly highlight ranges
that span multiple lines by inserting multiple "</span>" and "<span>" tags.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49403 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoMake SourceManager::getFullFilePos() public.
Ted Kremenek [Tue, 8 Apr 2008 21:26:35 +0000 (21:26 +0000)]
Make SourceManager::getFullFilePos() public.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49402 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoChanged the Decl::Kind enum of the ObjCPropertyDecl class, so that it follows
Sam Bishop [Tue, 8 Apr 2008 20:49:25 +0000 (20:49 +0000)]
Changed the Decl::Kind enum of the ObjCPropertyDecl class, so that it follows
the pattern of the other Decl classes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49399 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoSet the location of ccc-analyzer to be the same directory as where scan-build
Ted Kremenek [Tue, 8 Apr 2008 20:22:12 +0000 (20:22 +0000)]
Set the location of ccc-analyzer to be the same directory as where scan-build
is located.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49397 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosilence some warnings when assertions are disabled.
Chris Lattner [Tue, 8 Apr 2008 05:52:18 +0000 (05:52 +0000)]
silence some warnings when assertions are disabled.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49372 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd support for C++ default arguments, and rework Parse-Sema
Chris Lattner [Tue, 8 Apr 2008 05:04:30 +0000 (05:04 +0000)]
Add support for C++ default arguments, and rework Parse-Sema
interaction for function parameters, fixing PR2046.

Patch by Doug Gregor!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49370 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd support for C++ default arguments, and rework Parse-Sema
Chris Lattner [Tue, 8 Apr 2008 04:40:51 +0000 (04:40 +0000)]
Add support for C++ default arguments, and rework Parse-Sema
interaction for function parameters, fixing PR2046.

Patch by Doug Gregor!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49369 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix rdar://5846705: "clang -E foo.c -o foo.i" should remove foo.i on error.
Chris Lattner [Tue, 8 Apr 2008 04:16:20 +0000 (04:16 +0000)]
Fix rdar://5846705: "clang -E foo.c -o foo.i" should remove foo.i on error.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49368 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd ids for line numbers, allowing us to jump to arbitrary line numbers within
Ted Kremenek [Mon, 7 Apr 2008 23:53:30 +0000 (23:53 +0000)]
Add ids for line numbers, allowing us to jump to arbitrary line numbers within
an HTMLified source file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49359 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoLeft-justify text in report table.
Ted Kremenek [Mon, 7 Apr 2008 23:50:07 +0000 (23:50 +0000)]
Left-justify text in report table.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49358 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoTweak message bubble color (gold)
Ted Kremenek [Mon, 7 Apr 2008 23:43:44 +0000 (23:43 +0000)]
Tweak message bubble color (gold)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49357 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoImprove BugReport diagnostics for loops and ? operator.
Ted Kremenek [Mon, 7 Apr 2008 23:35:17 +0000 (23:35 +0000)]
Improve BugReport diagnostics for loops and ? operator.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49356 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix analyzer breakage introduced by r49213: http://llvm.org/viewvc/llvm-project?rev...
Ted Kremenek [Mon, 7 Apr 2008 23:27:54 +0000 (23:27 +0000)]
Fix analyzer breakage introduced by r49213: http://llvm.org/viewvc/llvm-project?rev=49213&view=rev

The problem is that some clients of gcc lookout at the stdout output of gcc;
this requires that all the analyzer diagnostics go to stderr to avoid polluting
stdout.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49355 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoPass the ASTContext object around when deserializing Decl and Stmt objects, so
Sam Bishop [Mon, 7 Apr 2008 21:55:54 +0000 (21:55 +0000)]
Pass the ASTContext object around when deserializing Decl and Stmt objects, so
they can be created using the same allocator as in the "from source code" case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49353 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoHave Parser::FuzzyParseMicrosoftAsmStatement() return the null statement (';').
Steve Naroff [Mon, 7 Apr 2008 21:06:54 +0000 (21:06 +0000)]
Have Parser::FuzzyParseMicrosoftAsmStatement() return the null statement (';').

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49349 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agorandom whitespace fixes.
Chris Lattner [Mon, 7 Apr 2008 07:01:58 +0000 (07:01 +0000)]
random whitespace fixes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49328 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agofix a bug I introduced in my previous checkin.
Chris Lattner [Mon, 7 Apr 2008 06:58:21 +0000 (06:58 +0000)]
fix a bug I introduced in my previous checkin.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49327 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosimplify array compatibility testing.
Chris Lattner [Mon, 7 Apr 2008 06:56:55 +0000 (06:56 +0000)]
simplify array compatibility testing.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49326 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosimplify reference handling.
Chris Lattner [Mon, 7 Apr 2008 06:52:53 +0000 (06:52 +0000)]
simplify reference handling.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49325 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agomove some code around, no other change.
Chris Lattner [Mon, 7 Apr 2008 06:51:04 +0000 (06:51 +0000)]
move some code around, no other change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49324 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosimplify compatibility testing for tag types.
Chris Lattner [Mon, 7 Apr 2008 06:49:41 +0000 (06:49 +0000)]
simplify compatibility testing for tag types.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49323 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agomerge compatibility testing of qualified/unqualified interfaces together
Chris Lattner [Mon, 7 Apr 2008 06:38:24 +0000 (06:38 +0000)]
merge compatibility testing of qualified/unqualified interfaces together
and fix a bug.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49322 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix a really bad bug where type uniquing would merge a<x> with b<x> as the same
Chris Lattner [Mon, 7 Apr 2008 06:37:47 +0000 (06:37 +0000)]
Fix a really bad bug where type uniquing would merge a<x> with b<x> as the same
type, because it did not include a/b in the hash.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49321 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoMyOtherClass<MyProtocol>* is compatible with MyClass*
Chris Lattner [Mon, 7 Apr 2008 06:06:56 +0000 (06:06 +0000)]
MyOtherClass<MyProtocol>* is compatible with MyClass*
if MyClass is a superclass of MyOtherClass, there is no need for
an exact interface match.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49320 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRemove a dead check for compatible builtin types
Chris Lattner [Mon, 7 Apr 2008 05:55:38 +0000 (05:55 +0000)]
Remove a dead check for compatible builtin types

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49319 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agofuther simplify compatibility testing of objc interface types.
Chris Lattner [Mon, 7 Apr 2008 05:53:18 +0000 (05:53 +0000)]
futher simplify compatibility testing of objc interface types.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49318 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoocuvector and vector should be compatible. Fix ASQual compatibility.
Chris Lattner [Mon, 7 Apr 2008 05:43:21 +0000 (05:43 +0000)]
ocuvector and vector should be compatible.  Fix ASQual compatibility.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49316 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix comment typo, do reference eval at the correct type.
Chris Lattner [Mon, 7 Apr 2008 05:37:56 +0000 (05:37 +0000)]
Fix comment typo, do reference eval at the correct type.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49315 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosimplify vector type compatibility testing.
Chris Lattner [Mon, 7 Apr 2008 05:36:14 +0000 (05:36 +0000)]
simplify vector type compatibility testing.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49314 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agomove ObjCQualifiedIdTypesAreCompatible out of ASTContext into Sema.
Chris Lattner [Mon, 7 Apr 2008 05:30:13 +0000 (05:30 +0000)]
move ObjCQualifiedIdTypesAreCompatible out of ASTContext into Sema.
While it is similar to the other compatibility predicates in ASTContext,
it is not used by them and is different.

In addition, greatly simplify ObjCQualifiedIdTypesAreCompatible and
fix some canonical type bugs.  Also, simplify my Type::getAsObjC* methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49313 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoReplace an O(n^2) algorithm in areCompatObjCQualInterfaces with
Chris Lattner [Mon, 7 Apr 2008 05:05:41 +0000 (05:05 +0000)]
Replace an O(n^2) algorithm in areCompatObjCQualInterfaces with
an O(n) algorithm by taking advantage of the fact that the
protocol qualifier list is already guaranteed sorted.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49312 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoimprove comments.
Chris Lattner [Mon, 7 Apr 2008 04:58:07 +0000 (04:58 +0000)]
improve comments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49311 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agomove sorting of qualifying protocols from the parser into
Chris Lattner [Mon, 7 Apr 2008 04:56:42 +0000 (04:56 +0000)]
move sorting of qualifying protocols from the parser into
sema.  This allows clients of the parser to have the unmolested
list if desired, and guarantees that noone can create an
ObjCQualifiedInterfaceType with an unsorted list.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49310 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoadd an example.
Chris Lattner [Mon, 7 Apr 2008 04:47:29 +0000 (04:47 +0000)]
add an example.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49309 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoeliminate getReferencedProtocols from
Chris Lattner [Mon, 7 Apr 2008 04:44:08 +0000 (04:44 +0000)]
eliminate getReferencedProtocols from
ObjCQualifiedIdType/ObjCQualifiedInterfaceType, adding an interator
interface instead.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49308 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agomake QualifiedInterfaceTypesAreCompatible a static function
Chris Lattner [Mon, 7 Apr 2008 04:17:40 +0000 (04:17 +0000)]
make QualifiedInterfaceTypesAreCompatible a static function
and start simplifying it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49307 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoThis predicate is just a generic "issuperclass" predicate, move it to the
Chris Lattner [Mon, 7 Apr 2008 04:13:03 +0000 (04:13 +0000)]
This predicate is just a generic "issuperclass" predicate, move it to the
ObjCInterfaceType as a method.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49306 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoSimplify some objc compatibility testing, make interfaceTypesAreCompatible
Chris Lattner [Mon, 7 Apr 2008 04:07:56 +0000 (04:07 +0000)]
Simplify some objc compatibility testing, make interfaceTypesAreCompatible
a static function named isCompatibleInterfaceAssign.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49305 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosimplify the logic in ASTContext::objcTypesAreCompatible
Chris Lattner [Mon, 7 Apr 2008 01:30:37 +0000 (01:30 +0000)]
simplify the logic in ASTContext::objcTypesAreCompatible

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49302 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoclean up some logic in objc type handling. Specifically, make it so that
Chris Lattner [Mon, 7 Apr 2008 00:27:04 +0000 (00:27 +0000)]
clean up some logic in objc type handling.  Specifically, make it so that
there are QualType::getAsObjc* type methods, and make isa<ObjCInterfaceType>
return true for ObjCQualifiedInterfaceType's.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49300 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agotrivial changes to getFloatingTypeOfSizeWithinDomain, nothing significant.
Chris Lattner [Sun, 6 Apr 2008 23:58:54 +0000 (23:58 +0000)]
trivial changes to getFloatingTypeOfSizeWithinDomain, nothing significant.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49298 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosimplify max type computation by making it return an integer (like
Chris Lattner [Sun, 6 Apr 2008 23:55:33 +0000 (23:55 +0000)]
simplify max type computation by making it return an integer (like
getFloatingTypeOrder) instead of a type.  Fix a fixme.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49297 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agominor simplifications/cleanups to type comparisons.
Chris Lattner [Sun, 6 Apr 2008 23:38:49 +0000 (23:38 +0000)]
minor simplifications/cleanups to type comparisons.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49296 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoremove the Decl::getCanonicalType() method.
Chris Lattner [Sun, 6 Apr 2008 23:10:54 +0000 (23:10 +0000)]
remove the Decl::getCanonicalType() method.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49295 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoremove a use of getCanonicalType.
Chris Lattner [Sun, 6 Apr 2008 23:09:52 +0000 (23:09 +0000)]
remove a use of getCanonicalType.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49294 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoStart switching clients over from CT.getCanonicalType() to Context.getCanonicalType...
Chris Lattner [Sun, 6 Apr 2008 22:59:24 +0000 (22:59 +0000)]
Start switching clients over from CT.getCanonicalType() to Context.getCanonicalType(CT) for PR2189.

While I'm at it, clean up a bit of maxIntegerType.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49292 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agointroduce a new ASTContext::getCanonicalType method. This is the first
Chris Lattner [Sun, 6 Apr 2008 22:41:35 +0000 (22:41 +0000)]
introduce a new ASTContext::getCanonicalType method.  This is the first
step towards fixing PR2189.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49291 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoremove the old non-parallel test system. 'make' in clang/test now runs
Chris Lattner [Sun, 6 Apr 2008 22:32:01 +0000 (22:32 +0000)]
remove the old non-parallel test system.  'make' in clang/test now runs
the tests in parallel.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49290 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUse EnumType to simplify some code.
Chris Lattner [Sun, 6 Apr 2008 22:29:16 +0000 (22:29 +0000)]
Use EnumType to simplify some code.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49289 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agomake use of EnumType to simplify some code, eliminate warnings
Chris Lattner [Sun, 6 Apr 2008 22:05:18 +0000 (22:05 +0000)]
make use of EnumType to simplify some code, eliminate warnings
when assertions are disabled.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49288 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoMake EnumType/RecordType classof predicates simpler and more efficient in
Chris Lattner [Sun, 6 Apr 2008 22:04:54 +0000 (22:04 +0000)]
Make EnumType/RecordType classof predicates simpler and more efficient in
some cases.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49287 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoadd a helper EnumType object for asking about tagtypes for enums.
Chris Lattner [Sun, 6 Apr 2008 21:58:47 +0000 (21:58 +0000)]
add a helper EnumType object for asking about tagtypes for enums.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49286 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agotracking API changes arising from r49277
Gabor Greif [Sun, 6 Apr 2008 20:42:52 +0000 (20:42 +0000)]
tracking API changes arising from r49277

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49279 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agomove a semantic check out of the parser into sema.
Chris Lattner [Sun, 6 Apr 2008 07:49:57 +0000 (07:49 +0000)]
move a semantic check out of the parser into sema.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49273 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agonow that identifier list parsing is split out, simplify handling of
Chris Lattner [Sun, 6 Apr 2008 06:57:35 +0000 (06:57 +0000)]
now that identifier list parsing is split out, simplify handling of
normal typed argument lists.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49272 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoreject 'int test(x, x) int x; {}'
Chris Lattner [Sun, 6 Apr 2008 06:50:56 +0000 (06:50 +0000)]
reject 'int test(x, x) int x; {}'

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49271 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoreject 'typedef int y; int test(x, y)'.
Chris Lattner [Sun, 6 Apr 2008 06:47:48 +0000 (06:47 +0000)]
reject 'typedef int y; int test(x, y)'.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49270 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosimplify Parser::ParseFunctionDeclaratorIdentifierList
Chris Lattner [Sun, 6 Apr 2008 06:39:19 +0000 (06:39 +0000)]
simplify Parser::ParseFunctionDeclaratorIdentifierList

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49269 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosplit parsing of identifier lists in function declarators out into
Chris Lattner [Sun, 6 Apr 2008 06:34:08 +0000 (06:34 +0000)]
split parsing of identifier lists in function declarators out into
their own method.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49268 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agominor simplification
Chris Lattner [Sun, 6 Apr 2008 06:03:03 +0000 (06:03 +0000)]
minor simplification

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49267 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agofinish up throw parsing.
Chris Lattner [Sun, 6 Apr 2008 06:02:23 +0000 (06:02 +0000)]
finish up throw parsing.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49266 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosplit code for handling grouping parens in declarators from code that
Chris Lattner [Sun, 6 Apr 2008 05:45:57 +0000 (05:45 +0000)]
split code for handling grouping parens in declarators from code that
handles function argument parens in declarators.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49265 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoanother minor simplification
Chris Lattner [Sun, 6 Apr 2008 05:27:21 +0000 (05:27 +0000)]
another minor simplification

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49264 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUse token lookahead to simplify some code that is rarely executed.
Chris Lattner [Sun, 6 Apr 2008 05:26:30 +0000 (05:26 +0000)]
Use token lookahead to simplify some code that is rarely executed.
Since it is rare, the cost is not significant and we enjoy the
simplification.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49263 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix a bug I introduced in my const'ification patch.
Chris Lattner [Sun, 6 Apr 2008 05:25:03 +0000 (05:25 +0000)]
Fix a bug I introduced in my const'ification patch.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49262 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoThis patch contains these changes:
Chris Lattner [Sun, 6 Apr 2008 04:47:34 +0000 (04:47 +0000)]
This patch contains these changes:

-Renamed ContextDecl -> DeclContext
-Removed DeclContext pointer from FieldDecl
-EnumDecl inherits from DeclContext, instead of TagDecl

Patch by Argiris Kirtzidis!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49261 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agofix css font name, patch by Cédric Venet
Chris Lattner [Sun, 6 Apr 2008 04:37:21 +0000 (04:37 +0000)]
fix css font name, patch by Cédric Venet

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49260 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agodon't dereference hte end iterator when inserting at end of buffer.
Chris Lattner [Sun, 6 Apr 2008 04:36:15 +0000 (04:36 +0000)]
don't dereference hte end iterator when inserting at end of buffer.
Patch by Cédric Venet!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49259 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agotemplates can't be static.
Chris Lattner [Sun, 6 Apr 2008 04:22:39 +0000 (04:22 +0000)]
templates can't be static.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49258 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agofix a number of const qualification bugs.
Chris Lattner [Sun, 6 Apr 2008 04:11:27 +0000 (04:11 +0000)]
fix a number of const qualification bugs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49257 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoadd a missing #include
Chris Lattner [Sun, 6 Apr 2008 04:02:29 +0000 (04:02 +0000)]
add a missing #include

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49256 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix handling of implicit int, resolving PR2012 and reverting (and
Chris Lattner [Sat, 5 Apr 2008 06:32:51 +0000 (06:32 +0000)]
Fix handling of implicit int, resolving PR2012 and reverting (and
subsuming) my patch for PR1999.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49251 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoStep #1 to fixing PR2012: c89 allows declspecs to be completely
Chris Lattner [Sat, 5 Apr 2008 05:52:15 +0000 (05:52 +0000)]
Step #1 to fixing PR2012: c89 allows declspecs to be completely
missing from function definitions only.  If we see a function
definiton with missing declspecs, just fudge in an int.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49250 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAvoid implicitly including any header files (requested by ckane).
Steve Naroff [Fri, 4 Apr 2008 22:58:22 +0000 (22:58 +0000)]
Avoid implicitly including any header files (requested by ckane).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49241 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRewrite @package (an ObjC 2.0 idiom).
Steve Naroff [Fri, 4 Apr 2008 22:34:24 +0000 (22:34 +0000)]
Rewrite @package (an ObjC 2.0 idiom).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49238 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix MS-specific bug in RewriteTest::RewriteObjCMethodDecl().
Steve Naroff [Fri, 4 Apr 2008 22:23:44 +0000 (22:23 +0000)]
Fix MS-specific bug in RewriteTest::RewriteObjCMethodDecl().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49237 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd BugReporter.cpp to VC++ project file.
Steve Naroff [Fri, 4 Apr 2008 21:24:02 +0000 (21:24 +0000)]
Add BugReporter.cpp to VC++ project file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49233 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoSupport MS-specific integer suffixes (i8, i16, i32, i64, i128).
Steve Naroff [Fri, 4 Apr 2008 21:02:54 +0000 (21:02 +0000)]
Support MS-specific integer suffixes (i8, i16, i32, i64, i128).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49229 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix PR2049, updating Eli's patch that fixes to mainline. This produces incorrect
Chris Lattner [Fri, 4 Apr 2008 18:42:16 +0000 (18:42 +0000)]
Fix PR2049, updating Eli's patch that fixes to mainline.  This produces incorrect
code, but the codegen doesn't crash.  I'll file a bugzilla for the AST being wrong.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49226 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRename ScopedDecl::getContext() -> getContextDecl(). Two motivations:
Steve Naroff [Fri, 4 Apr 2008 18:15:49 +0000 (18:15 +0000)]
Rename ScopedDecl::getContext() -> getContextDecl(). Two motivations:

#1: To be consistent with FieldDecl::getContextDecl(), which serves the same purpose.
#2: From my perspective, getContext() is too general (and used by several other classes for different purposes).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49224 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd DeclBase.h to Xcode project.
Steve Naroff [Fri, 4 Apr 2008 18:04:30 +0000 (18:04 +0000)]
Add DeclBase.h to Xcode project.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49223 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoSince isComplexType() no longer returns true for _Complex integers, the code
Chris Lattner [Fri, 4 Apr 2008 16:54:41 +0000 (16:54 +0000)]
Since isComplexType() no longer returns true for _Complex integers, the code
generator needs to call isAnyComplexType().  This fixes PR1960.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49220 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoadd an isAnyComplexType() method, which returns true for both
Chris Lattner [Fri, 4 Apr 2008 16:51:46 +0000 (16:51 +0000)]
add an isAnyComplexType() method, which returns true for both
integer and FP complexes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49219 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoupdates from David.
Chris Lattner [Fri, 4 Apr 2008 15:59:59 +0000 (15:59 +0000)]
updates from David.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49217 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agovarious bug fixes, add to xcode project.
Chris Lattner [Fri, 4 Apr 2008 15:47:22 +0000 (15:47 +0000)]
various bug fixes, add to xcode project.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49216 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoinitial checkin of Étoilé runtime support, patch by David Chisnall
Chris Lattner [Fri, 4 Apr 2008 15:45:52 +0000 (15:45 +0000)]
initial checkin of Étoilé runtime support, patch by David Chisnall

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49215 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd explicit support for diagnosing implicit function decls.
Steve Naroff [Fri, 4 Apr 2008 14:32:09 +0000 (14:32 +0000)]
Add explicit support for diagnosing implicit function decls.
Without this, the diagnostic is very confusing. The diag is now consistent with gcc as well.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49214 91177308-0d34-0410-b5e6-96231b3b80d8

16 years ago- ccc: print generated command line to stdout instead of stderr
Seo Sanghyeon [Fri, 4 Apr 2008 11:02:21 +0000 (11:02 +0000)]
- ccc: print generated command line to stdout instead of stderr
- ccc: quote shell metacharacters in command line to ease copy-and-paste

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49213 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoPR1963: Address of function is a constant expression
Seo Sanghyeon [Fri, 4 Apr 2008 09:45:30 +0000 (09:45 +0000)]
PR1963: Address of function is a constant expression

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49212 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agofix build error: add missing braces.
Torok Edwin [Fri, 4 Apr 2008 06:16:25 +0000 (06:16 +0000)]
fix build error: add missing braces.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49209 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoIntroduce ContextDecl, patch by Argiris Kirtzidis!
Chris Lattner [Fri, 4 Apr 2008 06:12:32 +0000 (06:12 +0000)]
Introduce ContextDecl, patch by Argiris Kirtzidis!

-Added ContextDecl (no TranslationUnitDecl)
-ScopedDecl class has a ContextDecl member
-FieldDecl class has a ContextDecl member, so that a Field or a ObjCIvar can be traced back to their RecordDecl/ObjCInterfaceDecl easily
-FunctionDecl, ObjCMethodDecl, TagDecl, ObjCInterfaceDecl inherit from ContextDecl. With TagDecl as ContextDecl, enum constants have a EnumDecl as their context.
-Moved Decl class to a "DeclBase.h" along with ContextDecl class
-CurContext is handled by Sema

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49208 91177308-0d34-0410-b5e6-96231b3b80d8