Reject -I- in driver instead of clang-cc.

llvm-svn: 85469
This commit is contained in:
Daniel Dunbar
2009-10-29 01:53:44 +00:00
parent 938eb27b25
commit 38b6279ce4
4 changed files with 6 additions and 13 deletions

View File

@@ -52,8 +52,4 @@ def warn_integer_too_large_for_signed : Warning<
def note_invalid_subexpr_in_ice : Note<
"subexpression not valid in an integer constant expression">;
// clang-cc
def err_pp_I_dash_not_supported : Error<
"-I- not supported, please use -iquote instead">;
}

View File

@@ -55,6 +55,8 @@ def err_drv_command_signalled : Error<
"%0 command failed due to signal %1 (use -v to see invocation)">;
def err_drv_invalid_mfloat_abi : Error<
"invalid float ABI '%0'">;
def err_drv_I_dash_not_supported : Error<
"'%0' not supported, please use -iquote instead">;
def warn_drv_input_file_unused : Warning<
"%0: '%1' input unused when '%2' is present">;

View File

@@ -204,6 +204,10 @@ void Clang::AddPreprocessingOptions(const Driver &D,
// those options. :(
Args.AddAllArgValues(CmdArgs, options::OPT_Wp_COMMA,
options::OPT_Xpreprocessor);
// -I- is a deprecated GCC feature, reject it.
if (Arg *A = Args.getLastArg(options::OPT_I_))
D.Diag(clang::diag::err_drv_I_dash_not_supported) << A->getAsString(Args);
}
/// getARMTargetCPU - Get the (LLVM) name of the ARM cpu we are targetting.

View File

@@ -2329,15 +2329,6 @@ int main(int argc, char **argv) {
llvm::llvm_install_error_handler(LLVMErrorHandler,
static_cast<void*>(&Diags));
// -I- is a deprecated GCC feature, scan for it and reject it.
for (unsigned i = 0, e = I_dirs.size(); i != e; ++i) {
if (I_dirs[i] == "-") {
Diags.Report(FullSourceLoc(), diag::err_pp_I_dash_not_supported);
I_dirs.erase(I_dirs.begin()+i);
--i;
}
}
// Get information about the target being compiled for.
llvm::Triple Triple = CreateTargetTriple();
llvm::OwningPtr<TargetInfo>