- Oct 20, 2009
-
-
Chris Lattner authored
implements a framework that allows us to use information about previously substituted values to simplify subsequent ones. Maybe this would be useful for C++'y stuff, who knows. We now get: t.c:4:21: error: invalid operands to binary expression ('size_t' (aka 'unsigned long *') and 'size_t') return (size_t) 0 + (size_t) 0; ~~~~~~~~~~ ^ ~~~~~~~~~~ on the testcase. Note that size_t is only aka'd once. llvm-svn: 84604
-
Chris Lattner authored
pass them down into the ArgToStringFn implementation. This allows redundancy across operands to a diagnostic to be eliminated. This isn't used yet, so no functionality change. llvm-svn: 84602
-
Chris Lattner authored
llvm-svn: 84599
-
Fariborz Jahanian authored
<<=, >>= and the rest. llvm-svn: 84568
-
Douglas Gregor authored
t->~T<A0, A1>() Fixes PR5213. llvm-svn: 84545
-
- Oct 19, 2009
-
-
Fariborz Jahanian authored
to '+=', '-=', '*=' and '/=' builtin operators and fixes a logic bug exposed by doing this. llvm-svn: 84538
-
Fariborz Jahanian authored
is a standard convesion and not a user-defined conversion. llvm-svn: 84525
-
Anders Carlsson authored
llvm-svn: 84514
-
- Oct 18, 2009
-
-
Anders Carlsson authored
llvm-svn: 84448
-
Daniel Dunbar authored
are updated. llvm-svn: 84447
-
Anders Carlsson authored
llvm-svn: 84438
-
Daniel Dunbar authored
- strcmp -> == - OS.write(II->getName() ...) -> OS << II->getNameStr() - Avoid std::string concatenation - Use getNameStr().str() when an std::string is really needed. llvm-svn: 84437
-
Daniel Dunbar authored
llvm-svn: 84436
-
Anders Carlsson authored
llvm-svn: 84428
-
Anders Carlsson authored
llvm-svn: 84423
-
John McCall authored
TemplateTypeParmType with the substituted type directly; instead, replace it with a SubstTemplateTypeParmType which will note that the type was originally written as a template type parameter. This makes it reasonable to preserve source information even through template substitution. Also define the new SubstTemplateTypeParmType class, obviously. For consistency with current behavior, we stringize these types as if they were the underlying type. I'm not sure this is the right thing to do. At any rate, I paled at adding yet another clause to the don't-desugar 'if' statement, so I extracted a function to do it. The new function also does The Right Thing more often, I think: e.g. if we have a chain of typedefs leading to a vector type, we will now desugar all but the last one. llvm-svn: 84412
-
Daniel Dunbar authored
llvm-svn: 84393
-
Daniel Dunbar authored
llvm-svn: 84391
-
Daniel Dunbar authored
- I have this crazy dream that one day someone will invent a miraculous tool so that developers, instead of hand optimizing their source code to obscure its intent and decrease its maleability, will instead write what they mean, and this strange and wonderful tool -- which I imagine would be called something fancy sounding like "an optimizing compiler" -- will make their code fast *for* them. With all the saved time, developers could maybe even focus on making the magic "optimizing compiler" better!! - No intended functionality change, all though I expect the universe to mock me for snarkiness. llvm-svn: 84390
-
John McCall authored
TypeLoc class names to be $(Type classname)Loc. Rewrite the visitor. Provide skeleton implementations for all the new TypeLocs. Handle all cases in PCH. Handle a few more cases when inserting location information in SemaType. It should be extremely straightforward to add new location information to existing TypeLoc objects now. llvm-svn: 84386
-
Douglas Gregor authored
llvm-svn: 84370
-
- Oct 17, 2009
-
-
Douglas Gregor authored
initialization if any of the constructor/initialization arguments are type-dependent. Fixes PR5224. llvm-svn: 84365
-
Sebastian Redl authored
When resolving the address of an overloaded function or function template, mark the result as referenced. The most important effect of this is that function templates only referenced by address expressions now get instantiated. This, in turn, means that Hello World compiles with the Apache stdcxx library even when using endl. llvm-svn: 84363
-
Sebastian Redl authored
Taking the address of an overloaded function with an explicit address-of operator wrapped the operator in an implicit cast that added yet another pointer level, leaving us with a corrupted AST, which crashed CodeGen in the test case I've added. Fix this by making FixOverloadedFunctionReference return whether there was an address-of operator and not adding the implicit cast in that case. llvm-svn: 84362
-
Chris Lattner authored
fixing PR4838. llvm-svn: 84353
-
Sebastian Redl authored
In some dependent contexts, incomplete array types persist into FinalizeDeclaratorGroup. Don't require them to have a complete type. This allows us to compile Hello World with the Apache stdcxx library. If you don't use endl, it even links and runs. llvm-svn: 84347
-
Edward O'Callaghan authored
llvm-svn: 84346
-
Daniel Dunbar authored
llvm-svn: 84307
-
Fariborz Jahanian authored
builtin function ambiguity. llvm-svn: 84289
-
Fariborz Jahanian authored
candidate types in BuiltinCandidateTypeSet::AddPointerWithMoreQualifiedTypeVariants further trimming the overload candidate set. llvm-svn: 84281
-
- Oct 16, 2009
-
-
Fariborz Jahanian authored
FIXME in CGCXX.cpp that I would like Anders to take a look at. llvm-svn: 84265
-
Chris Lattner authored
patch by Zhanyong Wan! llvm-svn: 84259
-
Anders Carlsson authored
llvm-svn: 84245
-
Anders Carlsson authored
llvm-svn: 84242
-
Anders Carlsson authored
llvm-svn: 84241
-
Anders Carlsson authored
llvm-svn: 84231
-
John McCall authored
TypeLoc records for declarations; it should not be necessary to represent it directly in the type system. Please complain if you were using these classes and feel you can't replicate previous functionality using the TypeLoc API. llvm-svn: 84222
-
Douglas Gregor authored
llvm-svn: 84217
-
Douglas Gregor authored
CheckSpecializationInstantiationRedecl to check for redeclarations/instantiations. Also fixes a longstanding issue where our explicit-instantiation location information wasn't as good as it could have been. llvm-svn: 84216
-
- Oct 15, 2009
-
-
Douglas Gregor authored
llvm-svn: 84189
-