From: David Malcolm Date: Mon, 27 Jun 2022 21:00:34 +0000 (-0400) Subject: Add 'final' and 'override' in various places X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=26f77c4d19b827f3a2a8a9323df8e182e1389cb9;p=platform%2Fupstream%2Fgcc.git Add 'final' and 'override' in various places gcc/cp/ChangeLog: * cxx-pretty-print.h: Add "final" and "override" to various vfunc implementations, removing redundant "virtual" as appropriate. * module.cc: Likewise. gcc/ChangeLog: * genmatch.cc: Add "final" and "override" to various vfunc implementations, removing redundant "virtual" as appropriate. * gensupport.cc: Likewise. * gimple-range-cache.h: Likewise. * ipa-icf-gimple.h: Likewise. * ipa-icf.h: Likewise. * read-md.h: Likewise. * read-rtl-function.cc: Likewise. * tree-ssa-loop-ch.cc: Likewise. * tree-ssa-sccvn.cc: Likewise. gcc/lto/ChangeLog: * lto-dump.cc: Add "final" and "override" to various vfunc implementations, removing redundant "virtual" as appropriate. Signed-off-by: David Malcolm --- diff --git a/gcc/cp/cxx-pretty-print.h b/gcc/cp/cxx-pretty-print.h index 5080f70..593bd91 100644 --- a/gcc/cp/cxx-pretty-print.h +++ b/gcc/cp/cxx-pretty-print.h @@ -36,25 +36,25 @@ public: pretty_printer *clone () const override; - void constant (tree); - void id_expression (tree); - void primary_expression (tree); - void postfix_expression (tree); - void unary_expression (tree); - void multiplicative_expression (tree); - void conditional_expression (tree); - void assignment_expression (tree); - void expression (tree); - void type_id (tree); - void statement (tree); - void declaration (tree); - void declaration_specifiers (tree); - void simple_type_specifier (tree); - void function_specifier (tree); - void declarator (tree); - void direct_declarator (tree); - void abstract_declarator (tree); - void direct_abstract_declarator (tree); + void constant (tree) final override; + void id_expression (tree) final override; + void primary_expression (tree) final override; + void postfix_expression (tree) final override; + void unary_expression (tree) final override; + void multiplicative_expression (tree) final override; + void conditional_expression (tree) final override; + void assignment_expression (tree) final override; + void expression (tree) final override; + void type_id (tree) final override; + void statement (tree) final override; + void declaration (tree) final override; + void declaration_specifiers (tree) final override; + void simple_type_specifier (tree) final override; + void function_specifier (tree) final override; + void declarator (tree) final override; + void direct_declarator (tree) final override; + void abstract_declarator (tree) final override; + void direct_abstract_declarator (tree) final override; /* This is the enclosing scope of the entity being pretty-printed. */ tree enclosing_scope; diff --git a/gcc/cp/module.cc b/gcc/cp/module.cc index 7ee779d..753963a 100644 --- a/gcc/cp/module.cc +++ b/gcc/cp/module.cc @@ -1483,10 +1483,10 @@ private: protected: using allocator::grow; - virtual char *grow (char *, unsigned needed); + char *grow (char *, unsigned needed) final override; #if MAPPED_WRITING using allocator::shrink; - virtual void shrink (char *); + void shrink (char *) final override; #endif public: diff --git a/gcc/genmatch.cc b/gcc/genmatch.cc index 2b84b84..a0b22c5 100644 --- a/gcc/genmatch.cc +++ b/gcc/genmatch.cc @@ -723,9 +723,9 @@ public: bool force_leaf; /* If non-zero, the group for optional handling. */ unsigned char opt_grp; - virtual void gen_transform (FILE *f, int, const char *, bool, int, - const char *, capture_info *, - dt_operand ** = 0, int = 0); + void gen_transform (FILE *f, int, const char *, bool, int, + const char *, capture_info *, + dt_operand ** = 0, int = 0) override; }; /* An operator that is represented by native C code. This is always @@ -757,9 +757,9 @@ public: unsigned nr_stmts; /* The identifier replacement vector. */ vec ids; - virtual void gen_transform (FILE *f, int, const char *, bool, int, - const char *, capture_info *, - dt_operand ** = 0, int = 0); + void gen_transform (FILE *f, int, const char *, bool, int, + const char *, capture_info *, + dt_operand ** = 0, int = 0) final override; }; /* A wrapper around another operand that captures its value. */ @@ -778,9 +778,9 @@ public: bool value_match; /* The captured value. */ operand *what; - virtual void gen_transform (FILE *f, int, const char *, bool, int, - const char *, capture_info *, - dt_operand ** = 0, int = 0); + void gen_transform (FILE *f, int, const char *, bool, int, + const char *, capture_info *, + dt_operand ** = 0, int = 0) final override; }; /* if expression. */ @@ -1655,7 +1655,7 @@ public: : dt_node (type, parent_), op (op_), match_dop (match_dop_), pos (pos_), value_match (false), for_id (current_id) {} - void gen (FILE *, int, bool, int); + void gen (FILE *, int, bool, int) final override; unsigned gen_predicate (FILE *, int, const char *, bool); unsigned gen_match_op (FILE *, int, const char *, bool); @@ -1681,7 +1681,7 @@ public: indexes (indexes_), info (NULL) {} void gen_1 (FILE *, int, bool, operand *); - void gen (FILE *f, int, bool, int); + void gen (FILE *f, int, bool, int) final override; }; template<> diff --git a/gcc/gensupport.cc b/gcc/gensupport.cc index 4268049..8fcacf8 100644 --- a/gcc/gensupport.cc +++ b/gcc/gensupport.cc @@ -2310,7 +2310,7 @@ class gen_reader : public rtx_reader { public: gen_reader () : rtx_reader (false) {} - void handle_unknown_directive (file_location, const char *); + void handle_unknown_directive (file_location, const char *) final override; }; void diff --git a/gcc/gimple-range-cache.h b/gcc/gimple-range-cache.h index 1e4b5b3..a784eba 100644 --- a/gcc/gimple-range-cache.h +++ b/gcc/gimple-range-cache.h @@ -77,8 +77,8 @@ public: ranger_cache (int not_executable_flag, bool use_imm_uses); ~ranger_cache (); - virtual bool range_of_expr (vrange &r, tree name, gimple *stmt); - virtual bool range_on_edge (vrange &r, edge e, tree expr); + bool range_of_expr (vrange &r, tree name, gimple *stmt) final override; + bool range_on_edge (vrange &r, edge e, tree expr) final override; bool block_range (vrange &r, basic_block bb, tree name, bool calc = true); bool get_global_range (vrange &r, tree name) const; diff --git a/gcc/ipa-icf-gimple.h b/gcc/ipa-icf-gimple.h index 1545e4a..8f498b3 100644 --- a/gcc/ipa-icf-gimple.h +++ b/gcc/ipa-icf-gimple.h @@ -282,11 +282,13 @@ private: public: /* Return true if two operands are equal. The flags fields can be used to specify OEP flags described above. */ - virtual bool operand_equal_p (const_tree, const_tree, unsigned int flags); + bool operand_equal_p (const_tree, const_tree, unsigned int flags) + final override; /* Generate a hash value for an expression. This can be used iteratively by passing a previous result as the HSTATE argument. */ - virtual void hash_operand (const_tree, inchash::hash &, unsigned flags); + void hash_operand (const_tree, inchash::hash &, unsigned flags) + final override; void hash_operand (const_tree, inchash::hash &, unsigned flags, operand_access_type access); }; diff --git a/gcc/ipa-icf.h b/gcc/ipa-icf.h index dbae2cc..bb55092 100644 --- a/gcc/ipa-icf.h +++ b/gcc/ipa-icf.h @@ -317,16 +317,18 @@ public: ~sem_function (); - virtual void init (ipa_icf_gimple::func_checker *); - virtual bool equals_wpa (sem_item *item, - hash_map &ignored_nodes); - virtual hashval_t get_hash (void); - virtual bool equals (sem_item *item, - hash_map &ignored_nodes); - virtual bool merge (sem_item *alias_item); + void init (ipa_icf_gimple::func_checker *) final override; + bool equals_wpa (sem_item *item, + hash_map &ignored_nodes) + final override; + hashval_t get_hash (void) final override; + bool equals (sem_item *item, + hash_map &ignored_nodes) + final override; + bool merge (sem_item *alias_item) final override; /* Dump symbol to FILE. */ - virtual void dump_to_file (FILE *file) + void dump_to_file (FILE *file) final override { gcc_assert (file); dump_function_to_file (decl, file, TDF_DETAILS); @@ -426,17 +428,19 @@ public: sem_variable (varpool_node *_node, bitmap_obstack *stack); /* Semantic variable initialization function. */ - virtual void init (ipa_icf_gimple::func_checker *); + void init (ipa_icf_gimple::func_checker *) final override; - virtual hashval_t get_hash (void); - virtual bool merge (sem_item *alias_item); - virtual void dump_to_file (FILE *file); - virtual bool equals (sem_item *item, - hash_map &ignored_nodes); + hashval_t get_hash (void) final override; + bool merge (sem_item *alias_item) final override; + void dump_to_file (FILE *file) final override; + bool equals (sem_item *item, + hash_map &ignored_nodes) + final override; /* Fast equality variable based on knowledge known in WPA. */ - virtual bool equals_wpa (sem_item *item, - hash_map &ignored_nodes); + bool equals_wpa (sem_item *item, + hash_map &ignored_nodes) + final override; /* Returns varpool_node. */ inline varpool_node *get_node (void) diff --git a/gcc/lto/lto-dump.cc b/gcc/lto/lto-dump.cc index 1fb3fb8..f88486b 100644 --- a/gcc/lto/lto-dump.cc +++ b/gcc/lto/lto-dump.cc @@ -80,7 +80,7 @@ public: virtual ~variable_entry () {} - virtual size_t get_size () const + size_t get_size () const final override { varpool_node *vnode = dyn_cast (node); if (DECL_SIZE (vnode->decl) && tree_fits_shwi_p (DECL_SIZE (vnode->decl))) @@ -88,7 +88,7 @@ public: return 0; } - virtual void dump () + void dump () final override { symbol_entry :: dump (); varpool_node *vnode = dyn_cast (node); @@ -111,13 +111,13 @@ public: virtual ~function_entry () {} - virtual void dump () + void dump () final override { symbol_entry :: dump (); printf ("\n"); } - virtual size_t get_size () const + size_t get_size () const final override { cgraph_node *cnode = dyn_cast (node); gcc_assert (cnode); diff --git a/gcc/read-md.h b/gcc/read-md.h index 34a64fa..7d8cd4a 100644 --- a/gcc/read-md.h +++ b/gcc/read-md.h @@ -330,7 +330,7 @@ class noop_reader : public md_reader noop_reader () : md_reader (false) {} /* A dummy implementation which skips unknown directives. */ - void handle_unknown_directive (file_location, const char *); + void handle_unknown_directive (file_location, const char *) override; }; /* An md_reader subclass that actually handles full hierarchical diff --git a/gcc/read-rtl-function.cc b/gcc/read-rtl-function.cc index eacbe4c..3bcff15 100644 --- a/gcc/read-rtl-function.cc +++ b/gcc/read-rtl-function.cc @@ -188,7 +188,7 @@ class fixup_insn_uid : public operand_fixup m_insn_uid (insn_uid) {} - void apply (function_reader *reader) const; + void apply (function_reader *reader) const final override; private: int m_insn_uid; @@ -206,7 +206,7 @@ class fixup_note_insn_basic_block : public operand_fixup m_bb_idx (bb_idx) {} - void apply (function_reader *reader) const; + void apply (function_reader *reader) const final override; private: int m_bb_idx; @@ -225,7 +225,7 @@ class fixup_expr : public fixup ~fixup_expr () { free (m_desc); } - void apply (function_reader *reader) const; + void apply (function_reader *reader) const final override; private: char *m_desc; diff --git a/gcc/tree-ssa-loop-ch.cc b/gcc/tree-ssa-loop-ch.cc index 843a436..c17a3e4 100644 --- a/gcc/tree-ssa-loop-ch.cc +++ b/gcc/tree-ssa-loop-ch.cc @@ -320,7 +320,7 @@ public: protected: /* ch_base method: */ - virtual bool process_loop_p (class loop *loop); + bool process_loop_p (class loop *loop) final override; }; // class pass_ch const pass_data pass_data_ch_vect = @@ -358,7 +358,7 @@ public: protected: /* ch_base method: */ - virtual bool process_loop_p (class loop *loop); + bool process_loop_p (class loop *loop) final override; }; // class pass_ch_vect /* For all loops, copy the condition at the end of the loop body in front diff --git a/gcc/tree-ssa-sccvn.cc b/gcc/tree-ssa-sccvn.cc index ef833f5..5214f14 100644 --- a/gcc/tree-ssa-sccvn.cc +++ b/gcc/tree-ssa-sccvn.cc @@ -2534,9 +2534,9 @@ public: : eliminate_dom_walker (CDI_DOMINATORS, NULL), entry (entry_), m_avail_freelist (NULL) {} - virtual tree eliminate_avail (basic_block, tree op); + tree eliminate_avail (basic_block, tree op) final override; - virtual void eliminate_push_avail (basic_block, tree); + void eliminate_push_avail (basic_block, tree) final override; basic_block entry; /* Freelist of avail entries which are allocated from the vn_ssa_aux