From 261034861d2c8cfbd6036e56f22f57d7a3736861 Mon Sep 17 00:00:00 2001 From: Douglas Gregor Date: Thu, 2 Apr 2009 03:14:12 +0000 Subject: [PATCH] Clean up -fixit output slightly git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68278 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Frontend/FixItRewriter.cpp | 3 ++- lib/Sema/SemaDecl.cpp | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/Frontend/FixItRewriter.cpp b/lib/Frontend/FixItRewriter.cpp index a53d1e56d1..33ab0b7c99 100644 --- a/lib/Frontend/FixItRewriter.cpp +++ b/lib/Frontend/FixItRewriter.cpp @@ -57,8 +57,9 @@ bool FixItRewriter::WriteFixedFile(const std::string &InFileName, OutFile = &llvm::outs(); } else { llvm::sys::Path Path(InFileName); + std::string Suffix = Path.getSuffix(); Path.eraseSuffix(); - Path.appendSuffix("cpp"); + Path.appendSuffix("fixit." + Suffix); std::string Err; OutFile = new llvm::raw_fd_ostream(Path.toString().c_str(), // set binary mode (critical for Windoze) diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp index f67b417ddd..7cf44bf6ac 100644 --- a/lib/Sema/SemaDecl.cpp +++ b/lib/Sema/SemaDecl.cpp @@ -2706,11 +2706,12 @@ void Sema::ActOnFinishKNRParamDeclarations(Scope *S, Declarator &D, // Verify 6.9.1p6: 'every identifier in the identifier list shall be declared' // for a K&R function. if (!FTI.hasPrototype) { - for (unsigned i = 0, e = FTI.NumArgs; i != e; ++i) { + for (int i = FTI.NumArgs; i != 0; /* decrement in loop */) { + --i; if (FTI.ArgInfo[i].Param == 0) { - std::string Code = "int "; + std::string Code = " int "; Code += FTI.ArgInfo[i].Ident->getName(); - Code += ";\n "; + Code += ";\n"; Diag(FTI.ArgInfo[i].IdentLoc, diag::ext_param_not_declared) << FTI.ArgInfo[i].Ident << CodeModificationHint::CreateInsertion(LocAfterDecls, Code); -- 2.50.1