Checks
Commit Message
The patch fixes the following Clang warnings:
gcc/go/gofrontend/escape.cc:1290:17: warning: private field 'fn_' is not used [-Wunused-private-field]
gcc/go/gofrontend/escape.cc:3478:19: warning: private field 'context_' is not used [-Wunused-private-field]
gcc/go/gofrontend/lex.h:564:15: warning: private field 'input_file_name_' is not used [-Wunused-private-field]
gcc/go/gofrontend/types.cc:5788:20: warning: private field 'call_' is not used [-Wunused-private-field]
gcc/go/gofrontend/wb.cc:206:9: warning: private field 'gogo_' is not used [-Wunused-private-field]
Ready for master?
Thanks,
Martin
gcc/go/ChangeLog:
* gofrontend/escape.cc (Gogo::analyze_escape): Remove context
arg.
(Gogo::assign_connectivity): Likewise.
(class Escape_analysis_tag): Remove context ctor argument.
(Gogo::tag_function): Likewise.
* gofrontend/expressions.cc (Call_expression::do_type):
Remove extra arg.
* gofrontend/gogo.h (class Gogo): Remove context arg.
* gofrontend/lex.h (class Lex): Make input_file_name_
with ATTRIBUTE_UNUSED.
* gofrontend/types.cc (class Call_multiple_result_type):
Remove call_ argument.
(Type::make_call_multiple_result_type): Likewise.
* gofrontend/types.h (class Type): Remove argument.
* gofrontend/wb.cc (class Check_escape): Remove gogo_
field.
(Gogo::add_write_barriers): Remove extra arg.
---
gcc/go/gofrontend/escape.cc | 20 +++++++-------------
gcc/go/gofrontend/expressions.cc | 2 +-
gcc/go/gofrontend/gogo.h | 2 +-
gcc/go/gofrontend/lex.h | 2 +-
gcc/go/gofrontend/types.cc | 13 ++++---------
gcc/go/gofrontend/types.h | 2 +-
gcc/go/gofrontend/wb.cc | 10 +++-------
7 files changed, 18 insertions(+), 33 deletions(-)
Comments
On Wed, Dec 21, 2022 at 12:05 AM Martin Liška <mliska@suse.cz> wrote:
>
> The patch fixes the following Clang warnings:
>
> gcc/go/gofrontend/escape.cc:1290:17: warning: private field 'fn_' is not used [-Wunused-private-field]
> gcc/go/gofrontend/escape.cc:3478:19: warning: private field 'context_' is not used [-Wunused-private-field]
> gcc/go/gofrontend/lex.h:564:15: warning: private field 'input_file_name_' is not used [-Wunused-private-field]
> gcc/go/gofrontend/types.cc:5788:20: warning: private field 'call_' is not used [-Wunused-private-field]
> gcc/go/gofrontend/wb.cc:206:9: warning: private field 'gogo_' is not used [-Wunused-private-field]
>
> Ready for master?
Thanks. Committed to mainline.
Ian
@@ -990,7 +990,7 @@ Gogo::analyze_escape()
for (std::vector<Named_object*>::iterator fn = stack.begin();
fn != stack.end();
++fn)
- this->tag_function(context, *fn);
+ this->tag_function(*fn);
if (this->debug_escape_level() != 0)
{
@@ -1246,10 +1246,10 @@ Escape_analysis_loop::statement(Block*, size_t*, Statement* s)
class Escape_analysis_assign : public Traverse
{
public:
- Escape_analysis_assign(Escape_context* context, Named_object* fn)
+ Escape_analysis_assign(Escape_context* context)
: Traverse(traverse_statements
| traverse_expressions),
- context_(context), fn_(fn)
+ context_(context)
{ }
// Model statements within a function as assignments and flows between nodes.
@@ -1286,8 +1286,6 @@ public:
private:
// The escape context for this set of functions.
Escape_context* context_;
- // The current function being analyzed.
- Named_object* fn_;
};
// Helper function to detect self assignment like the following.
@@ -2899,7 +2897,7 @@ Gogo::assign_connectivity(Escape_context* context, Named_object* fn)
int save_depth = context->loop_depth();
context->set_loop_depth(1);
- Escape_analysis_assign ea(context, fn);
+ Escape_analysis_assign ea(context);
Function::Results* res = fn->func_value()->result_variables();
if (res != NULL)
{
@@ -3465,17 +3463,13 @@ Gogo::propagate_escape(Escape_context* context, Node* dst)
class Escape_analysis_tag
{
public:
- Escape_analysis_tag(Escape_context* context)
- : context_(context)
+ Escape_analysis_tag()
{ }
// Add notes to the function's type about the escape information of its
// input parameters.
void
tag(Named_object* fn);
-
- private:
- Escape_context* context_;
};
void
@@ -3580,9 +3574,9 @@ Escape_analysis_tag::tag(Named_object* fn)
// retain analysis results across imports.
void
-Gogo::tag_function(Escape_context* context, Named_object* fn)
+Gogo::tag_function(Named_object* fn)
{
- Escape_analysis_tag eat(context);
+ Escape_analysis_tag eat;
eat.tag(fn);
}
@@ -12500,7 +12500,7 @@ Call_expression::do_type()
else if (results->size() == 1)
ret = results->begin()->type();
else
- ret = Type::make_call_multiple_result_type(this);
+ ret = Type::make_call_multiple_result_type();
this->type_ = ret;
@@ -879,7 +879,7 @@ class Gogo
// Add notes about the escape level of a function's input and output
// parameters for exporting and importing top level functions.
void
- tag_function(Escape_context*, Named_object*);
+ tag_function(Named_object*);
// Reclaim memory of escape analysis Nodes.
void
@@ -561,7 +561,7 @@ class Lex
gather_embed(const char*, const char*);
// The input file name.
- const char* input_file_name_;
+ const char* input_file_name_ ATTRIBUTE_UNUSED;
// The input file.
FILE* input_file_;
// The object used to keep track of file names and line numbers.
@@ -5747,9 +5747,8 @@ Type::make_nil_type()
class Call_multiple_result_type : public Type
{
public:
- Call_multiple_result_type(Call_expression* call)
- : Type(TYPE_CALL_MULTIPLE_RESULT),
- call_(call)
+ Call_multiple_result_type()
+ : Type(TYPE_CALL_MULTIPLE_RESULT)
{ }
protected:
@@ -5782,18 +5781,14 @@ class Call_multiple_result_type : public Type
void
do_mangled_name(Gogo*, std::string*, bool*) const
{ go_assert(saw_errors()); }
-
- private:
- // The expression being called.
- Call_expression* call_;
};
// Make a call result type.
Type*
-Type::make_call_multiple_result_type(Call_expression* call)
+Type::make_call_multiple_result_type()
{
- return new Call_multiple_result_type(call);
+ return new Call_multiple_result_type;
}
// Class Struct_field.
@@ -535,7 +535,7 @@ class Type
make_nil_type();
static Type*
- make_call_multiple_result_type(Call_expression*);
+ make_call_multiple_result_type();
static Struct_type*
make_struct_type(Struct_field_list* fields, Location);
@@ -191,9 +191,8 @@ Mark_address_taken::expression(Expression** pexpr)
class Check_escape : public Traverse
{
public:
- Check_escape(Gogo* gogo)
- : Traverse(traverse_expressions | traverse_variables),
- gogo_(gogo)
+ Check_escape()
+ : Traverse(traverse_expressions | traverse_variables)
{ }
int
@@ -201,9 +200,6 @@ class Check_escape : public Traverse
int
variable(Named_object*);
-
- private:
- Gogo* gogo_;
};
int
@@ -664,7 +660,7 @@ Gogo::add_write_barriers()
{
this->propagate_writebarrierrec();
- Check_escape chk(this);
+ Check_escape chk;
this->traverse(&chk);
}