- Apr 01, 2009
-
-
Douglas Gregor authored
heuristics to determine when it's useful to desugar a type for display to the user. Introduce two C++-specific heuristics: - For a qualified type (like "foo::bar"), only produce a new desugred type if desugaring the qualified type ("bar", in this case) produces something interesting. For example, if "foo::bar" refers to a class named "bar", don't desugar. However, if "foo::bar" refers to a typedef of something else, desugar to that something else. This gives some useful desugaring such as "foo::bar (aka 'int')". - Don't desugar class template specialization types like "basic_string<char>" down to their underlying "class basic_string<char, char_traits<char>, allocator<char>>, etc."; it's better just to leave such types alone. Update diagnostics.html with some discussion and examples of type preservation in C++, showing qualified names and class template specialization types. llvm-svn: 68207
-
Steve Naroff authored
Patch by Jean-Daniel Dupas. Thanks! llvm-svn: 68203
-
Steve Naroff authored
llvm-svn: 68198
-
Daniel Dunbar authored
- Small structures are returned in a register if: 1. They fit nicely in a register. 2. All fields fit nicely in a register. (more or less) - We now pass the first 5000 ABITests if unions are disabled. - <rdar://problem/6497882> [irgen] x86-32 ABI compatibility with small structs llvm-svn: 68197
-
Daniel Dunbar authored
element structures", which have different ABI rules. - Current return-arguments-32 status is: 1 out of 1000 failures (-7) - Also, vectors inside "single element structs" require special handling. llvm-svn: 68196
-
rdar://problem/6740387Ted Kremenek authored
should only be an error if that value is consumed. This fix was largely accomplished by moving 'isConsumedExpr' back to ParentMap. llvm-svn: 68195
-
Chris Lattner authored
types. It is no longer needed now that the code generator re-lays-out interfaces if they are defines after being laid out from a forward decl. llvm-svn: 68194
-
Ted Kremenek authored
instead of a FullSourceLoc. This resulted in a bunch of small edits in various clients. - Updated BugReporter to include an alternate PathDiagnostic generation algorithm for PathDiagnosticClients desiring more control-flow pieces. llvm-svn: 68193
-
Daniel Dunbar authored
- Current return-arguments-32 status is: 8 out of 1000 failures (-7) llvm-svn: 68192
-
Daniel Dunbar authored
- <rdar://problem/6732143> Crash when generating @synchronize for zero-cost exception - Thanks to Anders for helping track down the problem. llvm-svn: 68186
-
Ted Kremenek authored
distinguish between the true and false branches for path-sensitive analyses. llvm-svn: 68185
-
Daniel Dunbar authored
- c.f. r68164 llvm-svn: 68184
-
Daniel Dunbar authored
case. llvm-svn: 68182
-
Eli Friedman authored
llvm-svn: 68181
-
Chris Lattner authored
types get completed when their definition is seen if previously laid out by the code generator. llvm-svn: 68177
-
Chris Lattner authored
llvm-svn: 68176
-
Chris Lattner authored
llvm-svn: 68174
-
Mike Stump authored
llvm-svn: 68171
-
Anders Carlsson authored
llvm-svn: 68170
-
Chris Lattner authored
rdar://6740292 llvm-svn: 68169
-
Anders Carlsson authored
Fix a bug (that I thought I had fixed already) where mangling a prefix could get us into an infinite loop llvm-svn: 68168
-
Douglas Gregor authored
specifiers that terminate in a simple-template-id, e.g., typename MetaFun::template apply<T1, T2> Also, implement template instantiation for dependent nested-name-specifiers that involve unresolved identifiers, e.g., typename T::type::type llvm-svn: 68166
-
Daniel Dunbar authored
llvm-svn: 68165
-
Anders Carlsson authored
llvm-svn: 68162
-
Daniel Dunbar authored
- Notably, set section on cfstring literal string data (for now, this is done everywhere because it matches what we were already doing for the CFString data itself) - <rdar://problem/6599098> [irgen] linker requires objc string data to go into cstring llvm-svn: 68160
-
Ted Kremenek authored
llvm-svn: 68157
-
Chris Lattner authored
attribute(used) and asm renaming are used together. llvm-svn: 68155
-
Chris Lattner authored
llvm-svn: 68151
-
- Mar 31, 2009
-
-
Daniel Dunbar authored
- PR3875. - <rdar://problem/6615249> [driver] ccc should support some form of --help llvm-svn: 68148
-
Daniel Dunbar authored
Also, removed default value for getOptionMetaVar. llvm-svn: 68146
-
Daniel Dunbar authored
the preprocessor. - PR3602. - As is inherent in the blanket forwarding options, this will only work if clang-cc happens to accept what the user passed. Users by and large should use driver options to interact with the preprocessor, if at all possible. llvm-svn: 68144
-
Ted Kremenek authored
refactoring to make this possible (no functionality change). llvm-svn: 68141
-
Douglas Gregor authored
llvm-svn: 68140
-
Daniel Dunbar authored
- Currently unused. And yes, now may be about the time I want a TableGen backend. llvm-svn: 68139
-
Daniel Dunbar authored
- Current return-arguments-32 status: 15/1000 failures llvm-svn: 68132
-
Douglas Gregor authored
template template parameters and dependent template names. For example, the oft-mentioned typename MetaFun::template apply<T1, T2>::type can now be instantiated, with the appropriate name lookup for "apply". llvm-svn: 68128
-
Fariborz Jahanian authored
Patch by David Chisnal. llvm-svn: 68125
-
Fariborz Jahanian authored
llvm-svn: 68122
-
Daniel Dunbar authored
- Patch by Ed Schouten! llvm-svn: 68121
-
Daniel Dunbar authored
- Always pass -triple to clang-cc (-arch will be removed). - clang-cc doesn't play guess work with the target triple anymore. llvm-svn: 68119
-