diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2014-03-12 23:36:42 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2014-03-12 23:36:42 +0000 |
commit | 5b5d21ea1aac8ca59905be31e76ccf9b912a8d5c (patch) | |
tree | 87b04152250e9251f4bbc97dcbe1622b783f74dd /clang/lib | |
parent | 34ac9be1d7c60410cec282f0a26f63c2afae19ff (diff) | |
download | bcm5719-llvm-5b5d21ea1aac8ca59905be31e76ccf9b912a8d5c.tar.gz bcm5719-llvm-5b5d21ea1aac8ca59905be31e76ccf9b912a8d5c.zip |
Only allow streaming exactly type 'bool' to a DiagnosticBuilder, not anything
that implicitly converts to 'bool' (such as pointers, and the first operand of
?:). Clean up issues found by this. Patch by Stephan Tolksdorf!
llvm-svn: 203735
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/Driver/Driver.cpp | 4 | ||||
-rw-r--r-- | clang/lib/Lex/ModuleMap.cpp | 3 | ||||
-rw-r--r-- | clang/lib/Sema/SemaDeclCXX.cpp | 3 |
3 files changed, 5 insertions, 5 deletions
diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp index fa7e16c41ec..c318b60a938 100644 --- a/clang/lib/Driver/Driver.cpp +++ b/clang/lib/Driver/Driver.cpp @@ -1192,13 +1192,13 @@ void Driver::BuildActions(const ToolChain &TC, DerivedArgList &Args, Diag(clang::diag::warn_drv_preprocessed_input_file_unused) << InputArg->getAsString(Args) << !!FinalPhaseArg - << FinalPhaseArg ? FinalPhaseArg->getOption().getName() : ""; + << (FinalPhaseArg ? FinalPhaseArg->getOption().getName() : ""); else Diag(clang::diag::warn_drv_input_file_unused) << InputArg->getAsString(Args) << getPhaseName(InitialPhase) << !!FinalPhaseArg - << FinalPhaseArg ? FinalPhaseArg->getOption().getName() : ""; + << (FinalPhaseArg ? FinalPhaseArg->getOption().getName() : ""); continue; } diff --git a/clang/lib/Lex/ModuleMap.cpp b/clang/lib/Lex/ModuleMap.cpp index beb0bcbbd3f..d5e8af95fe6 100644 --- a/clang/lib/Lex/ModuleMap.cpp +++ b/clang/lib/Lex/ModuleMap.cpp @@ -1282,7 +1282,8 @@ void ModuleMapParser::parseModuleDecl() { if (ActiveModule) { Diags.Report(Id[I].second, diag::err_mmap_missing_module_qualified) - << Id[I].first << ActiveModule->getTopLevelModule(); + << Id[I].first + << ActiveModule->getTopLevelModule()->getFullModuleName(); } else { Diags.Report(Id[I].second, diag::err_mmap_expected_module_name); } diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp index 027fd6f309a..c75bac5e8c6 100644 --- a/clang/lib/Sema/SemaDeclCXX.cpp +++ b/clang/lib/Sema/SemaDeclCXX.cpp @@ -6564,8 +6564,7 @@ static void DiagnoseNamespaceInlineMismatch(Sema &S, SourceLocation KeywordLoc, S.Diag(Loc, diag::warn_inline_namespace_reopened_noninline) << FixItHint::CreateInsertion(KeywordLoc, "inline "); else - S.Diag(Loc, diag::err_inline_namespace_mismatch) - << IsInline; + S.Diag(Loc, diag::err_inline_namespace_mismatch) << *IsInline; S.Diag(PrevNS->getLocation(), diag::note_previous_definition); *IsInline = PrevNS->isInline(); |