- Jun 16, 2009
-
-
Zhongxing Xu authored
be unique. llvm-svn: 73482
-
Zhongxing Xu authored
llvm-svn: 73474
-
Anders Carlsson authored
llvm-svn: 73462
-
Anders Carlsson authored
llvm-svn: 73452
-
Steve Naroff authored
llvm-svn: 73450
-
Chris Lattner authored
llvm-svn: 73446
-
- Jun 15, 2009
-
-
rdar://problem/6945561Ted Kremenek authored
Fix: <rdar://problem/6945561> -[CIContext createCGLayerWithSize:info:] misinterpreted by clang scan-build llvm-svn: 73415
-
-
Douglas Gregor authored
llvm-svn: 73409
-
Eli Friedman authored
C++-specific tokens. llvm-svn: 73408
-
Anders Carlsson authored
llvm-svn: 73403
-
Douglas Gregor authored
llvm-svn: 73402
-
Anders Carlsson authored
llvm-svn: 73395
-
Ted Kremenek authored
llvm-svn: 73393
-
Daniel Dunbar authored
- p13 and p14 are important failures. llvm-svn: 73392
-
Anders Carlsson authored
llvm-svn: 73391
-
Douglas Gregor authored
its (possibly-remapped) diagnostics. Thanks, Chris! llvm-svn: 73390
-
Douglas Gregor authored
llvm-svn: 73389
-
Daniel Dunbar authored
- Failing, at least in part, because lookup in parser is finding a friend function where it shouldn't. llvm-svn: 73388
-
Zhongxing Xu authored
llvm-svn: 73386
-
Eli Friedman authored
unnecessary, this was causing issues for assembler-with-cpp mode, which doesn't process the directive. llvm-svn: 73382
-
Chris Lattner authored
ranges more similar to the console output. Consider: #define FOO(X, Y) X/ Y void foo(int *P, int *Q) { FOO(P, Q); } Before we emitted: t.c:4:3:{4:3-4:6}{4:3-4:6}: error: invalid operands to binary expression ('int *' and 'int *') FOO(P, Q); ^~~~~~~~~ ... Note that while we underline the macro args that the range info just includes FOO without its macros. This change teaches the printed ranges to include macro args also so that we get: t.c:4:3:{4:3-4:12}{4:3-4:12}: error: invalid operands to binary expression ('int *' and 'int *') FOO(P, Q); ^~~~~~~~~ ... This fixes rdar://6939599 llvm-svn: 73378
-
Chris Lattner authored
the file at the point of the pragma. This allows clang to know that all sourcelocations after the pragma are in a system header. llvm-svn: 73376
-
Chris Lattner authored
llvm-svn: 73375
-
Chris Lattner authored
llvm-svn: 73374
-
Chris Lattner authored
like: fatal error: could not find file '1.h' referenced by PCH file instead of aborting with an assertion failure, PR4219 llvm-svn: 73371
-
Chris Lattner authored
llvm-svn: 73370
-
Chris Lattner authored
llvm-svn: 73367
-
Chris Lattner authored
can occur in the middle of comment tokens. llvm-svn: 73365
-
Chris Lattner authored
"GCC emits an __objc_class_name_{classname} symbol for every class, and a corresponding reference to this symbol for every compilation unit that references the class. This causes linker errors when you try linking a program which references some classes but doesn't define them. The attached patch implements this support in clang, so you can compile a class with clang, reference it in a file compiled with GCC, and have it all work correctly." Patch by David Chisnall! llvm-svn: 73364
-
Eli Friedman authored
like "int x = + +3;". llvm-svn: 73356
-
- Jun 14, 2009
-
-
Eli Friedman authored
static intializers for structs. llvm-svn: 73349
-
Fariborz Jahanian authored
Patch by Jean-Daniel Dupas llvm-svn: 73343
-
Nuno Lopes authored
llvm-svn: 73341
-
Douglas Gregor authored
that were suppressed due to SFINAE. By checking whether any errors occur at the end of template argument deduction, we avoid the possibility of suppressing an error (due to SFINAE) and then recovering so well that template argument deduction never detects that there was a problem. Thanks to Eli for the push in this direction. llvm-svn: 73336
-
Douglas Gregor authored
Implement support for C++ Substitution Failure Is Not An Error (SFINAE), which says that errors that occur during template argument deduction do *not* produce diagnostics and do not necessarily make a program ill-formed. Instead, template argument deduction silently fails. This is currently implemented for template argument deduction during matching of class template partial specializations, although the mechanism will also apply to template argument deduction for function templates. The scheme is simple: - If we are in a template argument deduction context, any diagnostic that is considered a SFINAE error (or warning) will be suppressed. The error will be propagated up the call stack via the normal means. - By default, all warnings and errors are SFINAE errors. Add the NoSFINAE class to a diagnostic in the .td file to make it a hard error (e.g., for access-control violations). Note that, to make this fully work, every place in Sema that emits an error *and then immediately recovers* will need to check Sema::isSFINAEContext() to determine whether it must immediately return an error rather than recovering. llvm-svn: 73332
-
Nick Lewycky authored
llvm-svn: 73323
-
Eli Friedman authored
foo has a constant address. llvm-svn: 73321
-
Chris Lattner authored
preprocessor and initialize it early in clang-cc. This ensures that __has_builtin works in all modes, not just when ASTContext is around. llvm-svn: 73319
-
Chris Lattner authored
fixes a layering violation in lib/Basic/Targets.cpp. llvm-svn: 73318
-