aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-12-10abort when we lower an initializer to the wrong type, as we currently do for:Chris Lattner
char text[] = "string"; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44752 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-10extend or truncate the initializer for a string initializer to match its type.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44751 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09Implement codegen support for:Chris Lattner
char text[8] = "string"; Big fixme remains. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44750 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09Address Chris's comments.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44749 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09Move target specific builtin IDs to TargetBuiltins.h so that they can be ↵Anders Carlsson
used by CGBuiltin.cpp git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44748 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09Implement correct semantic analysis of subtractions, implementingChris Lattner
C99 6.5.6. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44746 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09Implement __builtin_ia32_mulps.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44745 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09Generate code for target specific intrinsics.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44744 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09The flags on tokens indicate whether they are the start of a *physical* line, Chris Lattner
not the start of a logical line. Be careful about this distinction, which affects when newlines are printed and when paste-avoidance happens, etc. This fixes PR1848, thanks to Neil for noticing this! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44743 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09Fix a pretty big but subtle bug counting the number of newlines to emit.Chris Lattner
This would cause us to emit different code (in -E mode) for these two files: --- #define t(x) x t(a 3) --- #define t(x) x t(a 3) --- In one case, -E would print "a\n3", in the other it printed "a3". Now it prints "a3" for both. This is part of PR1848. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44742 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09Add dumping support for locations, make -dumptokens print out the locationChris Lattner
info of each token. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44741 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09Fix typo noticed by Nico WeberChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44739 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09many edits to the main page, add a prominant 'status' section.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44737 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09unindent, don't zap whitespace before/after paragraphs.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44736 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09simplify the menu css, make it a bit more attractive.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44735 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09cleanup some markup, e.g. & -> &Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44734 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09avoid ///usr/include/foo.h, patch by Sean MiddleditchChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44731 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-09implement support for functions that initialize globals.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44730 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-08Add getTargetPrefix to TargetInfo, to be used with target specific intrinsics.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44712 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-08Test case for my last patch for implementation of static protocoled typeFariborz Jahanian
used as reciver type of a message expression. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44693 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-07Omit the field name when including the super class structure template.Steve Naroff
This allows us to access a superclasses ivars without deriving the absolute path. The comments below say a bit more... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44688 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-07Implemented when static typing is combined with protocols and use as receiverFariborz Jahanian
type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44685 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-07Have Sema::CheckConstantInitList skip semantic analysis when the element ↵Steve Naroff
type is a record (until we implement the FIXME). This removes a bogus error for the following code... snarofflocal% cat bug.m #import <Foundation/NSGeometry.h> #define NUMHELICOPTERRECTS 5 static NSRect helicopterRects[NUMHELICOPTERRECTS] = { {{27, 0}, {18, 11}}, // Bottom {{0, 8}, {4, 11}}, // Tail {{0, 16}, {50, 1}}, {{22, 5}, {18, 12}}, // Body {{0, 10}, {42, 3}} }; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44684 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-07Lookup methods in the global pool even when a statically typed object's ↵Steve Naroff
class interface isn't in scope! As the comment in the code indicates, I'm not fond of this. Nevertheless, gcc compat is a goal. Here is the case I'm talking about... #import <Foundation/Foundation.h> @interface AnyClass : NSObject - (NSRect)rect; @end @class Helicopter; static void func(Helicopter *obj) { NSRect r = [obj rect]; } ...before this patch, we would warn/error. With this patch, everything "just works". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44682 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-07Patch for rewriting of @protocol.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44681 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-07Rewrite 'super' within a class method. This required some minor tweaks to ↵Steve Naroff
the front-end. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44673 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-07Patch to implement "Protocol" as a built-in type declared asFariborz Jahanian
"@class Protocol;" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44670 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-06Add workaround to get test/Parser/compound_literal.c working again.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44666 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-06On Steve's suggestion, moved handling of use of undeclared method in a messageFariborz Jahanian
to rewriter (my previous patch). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44665 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-06More struct bitfields layout work. Now handle,Devang Patel
struct STestB1 {char a; char b:2; } stb1; struct STestB2 {char a; char b:5; char c:4} stb2; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44664 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-06test case for my very last patch.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44662 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-06Fix a bug handling typedefs of functions, patch by Nuno Lopes!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44661 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-06make it more clear what 'foo' isChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44653 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-06A missing method in a messaging expression issues a warning, clients must not Fariborz Jahanian
crash because of this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44648 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Subdivided the function InitializeBaseLanguage into InitializeBaseLanguage,Ted Kremenek
GetLanguage, and InitializeLangOptions. The goal is to break up this logic into atomic units of functionality that can later be refactored into better driver logic that is capable of handling a mixture of source files of different languages. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44642 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Avoid passing Diags into InitializeIncludePaths.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44639 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Make sure Parser::ParseObjCSelectorExpression() handles unary selectors ↵Steve Naroff
(with no arguments) properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44636 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Removed dependence on including iostream (use llvm/Support/Streams.h instead).Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44635 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Converted SerializationTest (--test-pickling) to use the new TranslationUnitTed Kremenek
class to serialize and deserialize translation units. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44634 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Make sure the class methods get attached to the metaclass object.Steve Naroff
Need to query the implementation, not the interface... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44633 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Added Driver/TranslationUnit.h and Driver/TranslationUnit.cpp to theTed Kremenek
XCode project. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44632 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Added "TranslationUnit" class that will be used to provide an interfaceTed Kremenek
for serializing/deserializing ASTs that is decoupled from the logic in SerializationTest (which will soon be rewritten to use this interface). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44631 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Modified: CreateTargetInfo(). Now takes Diagnostic* instead of Diagnostic&.Ted Kremenek
Modified: ctor of SerializationTest: Now takes LangOptions argument. We will eventually serialize this as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44630 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Added Basic/LangOptions.cpp to XCode project.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44625 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Implemented serialization of LangOptions.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44624 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05I'm apparently the only sad lonely ppc user left :)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44622 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Moved creation of ASTConsumers that can operate on both freshly-parsed andTed Kremenek
deserialized ASTs into the function CreateASTConsumer(). This function is called by ProcessInputFile, and soon the logic that processes deserialized ASTs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44618 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Patch to prevent crash on use of objc2 syntax.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44617 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05Changed type-cast of "struct objc_super"'s 2nd initializer to match ↵Fariborz Jahanian
definition of "struct objc_super". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44616 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-05fix some bogus code noticed by Kevin AndreChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44615 91177308-0d34-0410-b5e6-96231b3b80d8