aboutsummaryrefslogtreecommitdiff
path: root/gcc/go/gofrontend/parse.cc
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@golang.org>2019-06-23 22:10:19 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2019-06-23 22:10:19 +0000
commit587bd42530cee75da83979b18bb170302c915034 (patch)
tree9f53c18a8d1b2e95240549d6e6f986ff70bebd99 /gcc/go/gofrontend/parse.cc
parent26fcb396d1eecc73636ad5a694a16c5bb54fcd26 (diff)
downloadgcc-587bd42530cee75da83979b18bb170302c915034.zip
gcc-587bd42530cee75da83979b18bb170302c915034.tar.gz
gcc-587bd42530cee75da83979b18bb170302c915034.tar.bz2
compiler: edit error messages to avoid -Wformat-diag warnings
GCC recently introduced -Wformat-diag to scrutinize GCC error messages. It reports a number of warnings about gofrontend code, such as: ../../trunk/gcc/go/gofrontend/import.cc: In member function ‘Type* Import::type_for_index(int, const string&, size_t, bool*)’: ../../trunk/gcc/go/gofrontend/import.cc:1129:48: warning: unquoted operator ‘>=’ in format [-Wformat-diag] 1129 | "error in %s at %lu: bad type index %d >= %d", | ^~ ../../trunk/gcc/go/gofrontend/ast-dump.cc: In member function ‘void Ast_dump_context::dump(Gogo*, const char*)’: ../../trunk/gcc/go/gofrontend/ast-dump.cc:203:25: warning: unquoted option name ‘-fgo-dump-ast’ in format [-Wformat-diag] 203 | "cannot open %s:%m, -fgo-dump-ast ignored", dumpname.c_str()); | ^~~~~~~~~~~~~ ../../trunk/gcc/go/gofrontend/expressions.cc: In static member function ‘static Bexpression* Func_expression::get_code_pointer(Gogo*, Named_object*, Location)’: ../../trunk/gcc/go/gofrontend/expressions.cc:1350:29: warning: misspelled term ‘builtin function’ in format; use ‘built-in function’ instead [-Wformat-diag] 1350 | "invalid use of special builtin function %qs; must be called", | ^~~~~~~~~~~~~~~~ ../../trunk/gcc/go/gofrontend/gogo.cc: In member function ‘void Gogo::add_linkname(const string&, bool, const string&, Location)’: ../../trunk/gcc/go/gofrontend/gogo.cc:2527:4: warning: unquoted sequence of 2 consecutive punctuation characters ‘//’ in format [-Wformat-diag] 2527 | ("%s is not a function; " | ~^~~~~~~~~~~~~~~~~~~~~~~~ 2528 | "//go:linkname is only supported for functions"), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This CL edits error messages to avoid these warnings. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/183497 * go.test/test/blank1.go: Update for diagnostic message changes. From-SVN: r272608
Diffstat (limited to 'gcc/go/gofrontend/parse.cc')
-rw-r--r--gcc/go/gofrontend/parse.cc22
1 files changed, 11 insertions, 11 deletions
diff --git a/gcc/go/gofrontend/parse.cc b/gcc/go/gofrontend/parse.cc
index e611c70..52371b2 100644
--- a/gcc/go/gofrontend/parse.cc
+++ b/gcc/go/gofrontend/parse.cc
@@ -1359,7 +1359,7 @@ Parse::decl(void (Parse::*pfn)(void*, unsigned int), void* varg,
{
if (pragmas != 0)
go_warning_at(this->location(), 0,
- "ignoring magic //go:... comment before group");
+ "ignoring magic %<//go:...%> comment before group");
if (!this->advance_token()->is_op(OPERATOR_RPAREN))
{
this->list(pfn, varg, true);
@@ -1605,7 +1605,7 @@ Parse::type_spec(void*, unsigned int pragmas)
}
if (pragmas != 0)
go_warning_at(location, 0,
- "ignoring magic //go:... comment before type");
+ "ignoring magic %<//go:...%> comment before type");
}
else
{
@@ -1633,7 +1633,7 @@ Parse::var_spec(void*, unsigned int pragmas)
{
if (pragmas != 0)
go_warning_at(this->location(), 0,
- "ignoring magic //go:... comment before var");
+ "ignoring magic %<//go:...%> comment before var");
// Get the variable names.
Typed_identifier_list til;
@@ -2383,7 +2383,7 @@ Parse::function_decl(unsigned int pragmas)
if (pragma_check[i].decl_ok)
continue;
go_warning_at(location, 0,
- ("ignoring magic //go:%s comment "
+ ("ignoring magic %<//go:%s%> comment "
"before declaration"),
pragma_check[i].name);
}
@@ -2392,7 +2392,7 @@ Parse::function_decl(unsigned int pragmas)
if (pragma_check[i].func_ok)
continue;
go_warning_at(location, 0,
- ("ignoring magic //go:%s comment "
+ ("ignoring magic %<//go:%s%> comment "
"before function definition"),
pragma_check[i].name);
}
@@ -2401,7 +2401,7 @@ Parse::function_decl(unsigned int pragmas)
if (pragma_check[i].method_ok)
continue;
go_warning_at(location, 0,
- ("ignoring magic //go:%s comment "
+ ("ignoring magic %<//go:%s%> comment "
"before method definition"),
pragma_check[i].name);
}
@@ -2602,7 +2602,7 @@ Parse::operand(bool may_be_sink, bool* is_parenthesized)
return Expression::make_sink(location);
else
{
- go_error_at(location, "cannot use _ as value");
+ go_error_at(location, "cannot use %<_%> as value");
return Expression::make_error(location);
}
case Named_object::NAMED_OBJECT_FUNC:
@@ -4178,7 +4178,7 @@ Parse::tuple_assignment(Expression_list* lhs, bool may_be_composite_lit,
if ((*pe)->is_error_expression())
return;
if (op != OPERATOR_EQ && (*pe)->is_sink_expression())
- go_error_at((*pe)->location(), "cannot use _ as value");
+ go_error_at((*pe)->location(), "cannot use %<_%> as value");
}
for (Expression_list::const_iterator pe = vals->begin();
pe != vals->end();
@@ -5721,7 +5721,7 @@ Parse::package_clause()
name = token->identifier();
if (name == "_")
{
- go_error_at(this->location(), "invalid package name _");
+ go_error_at(this->location(), "invalid package name %<_%>");
name = Gogo::erroneous_name();
}
this->advance_token();
@@ -5752,7 +5752,7 @@ Parse::import_spec(void*, unsigned int pragmas)
{
if (pragmas != 0)
go_warning_at(this->location(), 0,
- "ignoring magic //go:... comment before import");
+ "ignoring magic %<//go:...%> comment before import");
const Token* token = this->peek_token();
Location location = token->location();
@@ -5876,7 +5876,7 @@ Parse::verify_not_sink(Expression* expr)
{
if (expr->is_sink_expression())
{
- go_error_at(expr->location(), "cannot use _ as value");
+ go_error_at(expr->location(), "cannot use %<_%> as value");
expr = Expression::make_error(expr->location());
}