- Jan 26, 2012
-
-
Fariborz Jahanian authored
leaves "finalize' behind and in arc mode, does not include it. This allows the migrated source to be compiled in both gc and arc mode. // rdar://10532441 llvm-svn: 149079
-
John McCall authored
declarator just because we were able to build an invalid decl for it. The invalid-type diagnostics, in particular, are still useful to know, and may indicate something about why the decl is invalid. Also, recover from an illegal pointer/reference-to-unqualified-retainable type using __strong instead of __autoreleasing; in general, a random object is much more likely to be __strong, so this avoids unnecessary cascading errors in the most common case. llvm-svn: 149074
-
Argyrios Kyrtzidis authored
another tag does not break C-like-ness. rdar://10756831 llvm-svn: 149071
-
Douglas Gregor authored
Objective-C class. The AST reader just throws away this data anyway! llvm-svn: 149067
-
Fariborz Jahanian authored
made symmetrical. // rdar://10734265 llvm-svn: 149065
-
NAKAMURA Takumi authored
AST/ExprConstant.cpp: Silence a warning on ms cl.exe. "bool" does not prefer to be compared to integer. llvm-svn: 149059
-
Douglas Gregor authored
provide the layout of records, rather than letting Clang compute the layout itself. LLDB provides the motivation for this feature: because various layout-altering attributes (packed, aligned, etc.) don't get reliably get placed into DWARF, the record layouts computed by LLDB from the reconstructed records differ from the actual layouts, and badness occurs. This interface lets the DWARF data drive layout, so we don't need the attributes preserved to get the answer write. The testing methodology for this change is fun. I've introduced a variant of -fdump-record-layouts called -fdump-record-layouts-simple that always has the simple C format and provides size/alignment/field offsets. There is also a -cc1 option -foverride-record-layout=<file> to take the output of -fdump-record-layouts-simple and parse it to produce a set of overridden layouts, which is introduced into the AST via a testing-only ExternalASTSource (called LayoutOverrideSource). Each test contains a number of records to lay out, which use various layout-changing attributes, and then dumps the layouts. We then run the test again, using the preprocessor to eliminate the layout-changing attributes entirely (which would give us different layouts for the records), but supplying the previously-computed record layouts. Finally, we diff the layouts produced from the two runs to be sure that they are identical. Note that this code makes the assumption that we don't *have* to provide the offsets of bases or virtual bases to get the layout right, because the alignment attributes don't affect it. I believe this assumption holds, but if it does not, we can extend LayoutOverrideSource to also provide base offset information. Fixes the Clang side of <rdar://problem/10169539>. llvm-svn: 149055
-
Eric Christopher authored
llvm-svn: 149051
-
Eric Christopher authored
the gdb testsuite complains too much about the ordering of items printed, even if the offsets in the debug info are correct. This reverts commit 027cb30af828f07750f9185782822297a5c57231. llvm-svn: 149049
-
Eric Christopher authored
llvm-svn: 149047
-
Richard Smith authored
llvm-svn: 149045
-
Argyrios Kyrtzidis authored
llvm-svn: 149044
-
Argyrios Kyrtzidis authored
with close(); return it instead. Fixes mingw build and eliminates possible racing issues. llvm-svn: 149043
-
NAKAMURA Takumi authored
llvm-svn: 149041
-
Bob Wilson authored
Revert r148249: "Make the auto-detection hack for the iOS simulator set the target triple correctly." There were some problems with this, so I'm backing it out for now. llvm-svn: 149040
-
Peter Collingbourne authored
canonical type directly and adding a fast path for the common case that the type is directly a RecordType. llvm-svn: 149039
-
Peter Collingbourne authored
llvm-svn: 149038
-
Peter Collingbourne authored
around, in the process cleaning up the various gcc/msvc compiler workarounds. llvm-svn: 149036
-
Douglas Gregor authored
llvm-svn: 149035
-
Eli Friedman authored
Refactor to share code for handling return statements between lambda expressions and block literals. As it turns out, almost all the logic can be shared. llvm-svn: 149031
-
Argyrios Kyrtzidis authored
-fixit-recompile applies fixits and recompiles the result -fixit-to-temporary applies fixits to temporary files -fix-only-warnings">, applies fixits for warnings only, not errors Combining "-fixit-recompile -fixit-to-temporary" allows testing the result of fixits without touching the original sources. llvm-svn: 149027
-
Ted Kremenek authored
llvm-svn: 149016
-
Eric Christopher authored
llvm-svn: 149015
-
Rafael Espindola authored
Now the lexer just produces a token and the parser is the one responsible for activating it. This fixes problem like the one pr11797 where the lexer and the parser were not in sync. This also let us be more strict on where in the file we accept these pragmas. llvm-svn: 149014
-
Eric Christopher authored
llvm-svn: 149013
-
Eric Christopher authored
llvm-svn: 149012
-
Chandler Carruth authored
both actually tests what it wants to, doesn't have bogus and broken assertions in it, and is also formatted much more cleanly and consistently. Probably still some more that can be improved here, but its much better. Original commit message: ---- Try to unbreak the FreeBSD toolchain's detection of 32-bit targets inside a 64-bit freebsd machine with the 32-bit compatibility layer installed. The FreeBSD image always has the /usr/lib32 directory, so test for the more concrete existence of crt1.o. Also enhance the tests for freebsd to clarify what these trees look like and exercise the new code. Thanks to all the FreeBSD folks for helping me understand what caused the failure and how we might fix it. =] That helps a lot. Also, yay build bots. llvm-svn: 149011
-
NAKAMURA Takumi authored
llvm-svn: 149009
-
Anna Zaks authored
using CFArrayCreate & family. Specifically, CFArrayCreate's input should be: 'A C array of the pointer-sized values to be in the new array.' (radar://10717339) llvm-svn: 149008
-
Fariborz Jahanian authored
they show up as argument types of two block pointers. // rdar://10734265 llvm-svn: 149007
-
Eli Friedman authored
llvm-svn: 149003
-
Fariborz Jahanian authored
unused yet. llvm-svn: 149001
-
Ted Kremenek authored
Rework flushing of diagnostics to PathDiagnosticConsumer. Now all the reports are batched up before being flushed to the underlying consumer implementation. This allows us to unique reports across analyses to multiple functions (which shows up with inlining). llvm-svn: 148997
-
Eli Friedman authored
Don't stack-allocate an IntegerLiteral which can be referred to after the current method returns. PR11744, part 2. llvm-svn: 148995
-
- Jan 25, 2012
-
-
Argyrios Kyrtzidis authored
Original log: Author: chandlerc <chandlerc@91177308-0d34-0410-b5e6-96231b3b80d8> Date: Wed Jan 25 21:32:31 2012 +0000 Try to unbreak the FreeBSD toolchain's detection of 32-bit targets inside a 64-bit freebsd machine with the 32-bit compatibility layer installed. The FreeBSD image always has the /usr/lib32 directory, so test for the more concrete existence of crt1.o. Also enhance the tests for freebsd to clarify what these trees look like and exercise the new code. Thanks to all the FreeBSD folks for helping me understand what caused the failure and how we might fix it. =] That helps a lot. Also, yay build bots. llvm-svn: 148993
-
Eli Friedman authored
Add some ABI tweaks for i386-pc-win32 triple so that we return structs in an MSVC-compatible way. Patch by Joe Groff. llvm-svn: 148992
-
Eli Friedman authored
llvm-svn: 148989
-
Ted Kremenek authored
llvm-svn: 148988
-
Richard Smith authored
llvm-svn: 148987
-
Eric Christopher authored
llvm-svn: 148982
-