[6/8] jit: update for move of FINAL and OVERRIDE

Message ID 20220519123208.3388554-6-dmalcolm@redhat.com
State Superseded
Headers
Series [1/8] Move FINAL and OVERRIDE from ansidecl.h to gcc-plugin.h |

Commit Message

David Malcolm May 19, 2022, 12:32 p.m. UTC
  I can self-approve this one, assuming that patch 1 is approved.

gcc/jit/ChangeLog:
	* jit-playback.h: Replace uses of "FINAL" and "OVERRIDE" with
	"final" and "override".
	* jit-recording.cc: Likewise.
	* jit-recording.h: Likewise.

Signed-off-by: David Malcolm <dmalcolm@redhat.com>
---
 gcc/jit/jit-playback.h   |  12 +-
 gcc/jit/jit-recording.cc |   2 +-
 gcc/jit/jit-recording.h  | 586 +++++++++++++++++++--------------------
 3 files changed, 300 insertions(+), 300 deletions(-)
  

Patch

diff --git a/gcc/jit/jit-playback.h b/gcc/jit/jit-playback.h
index b18aa4d38da..3ba02a0451a 100644
--- a/gcc/jit/jit-playback.h
+++ b/gcc/jit/jit-playback.h
@@ -378,7 +378,7 @@  class compile_to_memory : public context
 {
  public:
   compile_to_memory (recording::context *ctxt);
-  void postprocess (const char *ctxt_progname) FINAL OVERRIDE;
+  void postprocess (const char *ctxt_progname) final override;
 
   result *get_result_obj () const { return m_result; }
 
@@ -392,7 +392,7 @@  class compile_to_file : public context
   compile_to_file (recording::context *ctxt,
 		   enum gcc_jit_output_kind output_kind,
 		   const char *output_path);
-  void postprocess (const char *ctxt_progname) FINAL OVERRIDE;
+  void postprocess (const char *ctxt_progname) final override;
 
  private:
   void
@@ -483,7 +483,7 @@  public:
   function(context *ctxt, tree fndecl, enum gcc_jit_function_kind kind);
 
   void gt_ggc_mx ();
-  void finalizer () FINAL OVERRIDE;
+  void finalizer () final override;
 
   tree get_return_type_as_tree () const;
 
@@ -562,7 +562,7 @@  public:
   block (function *func,
 	 const char *name);
 
-  void finalizer () FINAL OVERRIDE;
+  void finalizer () final override;
 
   tree as_label_decl () const { return m_label_decl; }
 
@@ -750,7 +750,7 @@  class source_file : public wrapper
 {
 public:
   source_file (tree filename);
-  void finalizer () FINAL OVERRIDE;
+  void finalizer () final override;
 
   source_line *
   get_source_line (int line_num);
@@ -771,7 +771,7 @@  class source_line : public wrapper
 {
 public:
   source_line (source_file *file, int line_num);
-  void finalizer () FINAL OVERRIDE;
+  void finalizer () final override;
 
   location *
   get_location (recording::location *rloc, int column_num);
diff --git a/gcc/jit/jit-recording.cc b/gcc/jit/jit-recording.cc
index a31720f043e..2eaba825bcc 100644
--- a/gcc/jit/jit-recording.cc
+++ b/gcc/jit/jit-recording.cc
@@ -3743,7 +3743,7 @@  class rvalue_usage_validator : public recording::rvalue_visitor
 			  recording::statement *stmt);
 
   void
-  visit (recording::rvalue *rvalue) FINAL OVERRIDE;
+  visit (recording::rvalue *rvalue) final override;
 
  private:
   const char *m_api_funcname;
diff --git a/gcc/jit/jit-recording.h b/gcc/jit/jit-recording.h
index 78ee36488c7..2dd8a957ca7 100644
--- a/gcc/jit/jit-recording.h
+++ b/gcc/jit/jit-recording.h
@@ -441,11 +441,11 @@  public:
   static string * from_printf (context *ctxt, const char *fmt, ...)
     GNU_PRINTF(2, 3);
 
-  void replay_into (replayer *) FINAL OVERRIDE {}
+  void replay_into (replayer *) final override {}
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   size_t m_len;
@@ -469,7 +469,7 @@  public:
     m_created_by_user (created_by_user)
  {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
   playback::location *
   playback_location (replayer *r)
@@ -498,12 +498,12 @@  public:
     return static_cast <playback::location *> (m_playback_obj);
   }
 
-  location *dyn_cast_location () FINAL OVERRIDE { return this; }
+  location *dyn_cast_location () final override { return this; }
   bool created_by_user () const { return m_created_by_user; }
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   string *m_filename;
@@ -603,11 +603,11 @@  public:
   : type (ctxt),
     m_kind (kind) {}
 
-  type *dereference () FINAL OVERRIDE;
+  type *dereference () final override;
 
-  size_t get_size () FINAL OVERRIDE;
+  size_t get_size () final override;
 
-  bool accepts_writes_from (type *rtype) FINAL OVERRIDE
+  bool accepts_writes_from (type *rtype) final override
   {
     if (m_kind == GCC_JIT_TYPE_VOID_PTR)
       {
@@ -629,20 +629,20 @@  public:
     return type::accepts_writes_from (rtype);
   }
 
-  bool is_int () const FINAL OVERRIDE;
-  bool is_float () const FINAL OVERRIDE;
-  bool is_bool () const FINAL OVERRIDE;
-  type *is_pointer () FINAL OVERRIDE { return dereference (); }
-  type *is_array () FINAL OVERRIDE { return NULL; }
-  bool is_void () const FINAL OVERRIDE { return m_kind == GCC_JIT_TYPE_VOID; }
-  bool is_signed () const FINAL OVERRIDE;
+  bool is_int () const final override;
+  bool is_float () const final override;
+  bool is_bool () const final override;
+  type *is_pointer () final override { return dereference (); }
+  type *is_array () final override { return NULL; }
+  bool is_void () const final override { return m_kind == GCC_JIT_TYPE_VOID; }
+  bool is_signed () const final override;
 
 public:
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   enum gcc_jit_types m_kind;
@@ -656,24 +656,24 @@  public:
   : type (other_type->m_ctxt),
     m_other_type (other_type) {}
 
-  type *dereference () FINAL OVERRIDE { return m_other_type; }
+  type *dereference () final override { return m_other_type; }
 
-  size_t get_size () FINAL OVERRIDE;
+  size_t get_size () final override;
 
-  bool accepts_writes_from (type *rtype) FINAL OVERRIDE;
+  bool accepts_writes_from (type *rtype) final override;
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  bool is_int () const FINAL OVERRIDE { return false; }
-  bool is_float () const FINAL OVERRIDE { return false; }
-  bool is_bool () const FINAL OVERRIDE { return false; }
-  type *is_pointer () FINAL OVERRIDE { return m_other_type; }
-  type *is_array () FINAL OVERRIDE { return NULL; }
-  bool is_signed () const FINAL OVERRIDE { return false; }
+  bool is_int () const final override { return false; }
+  bool is_float () const final override { return false; }
+  bool is_bool () const final override { return false; }
+  type *is_pointer () final override { return m_other_type; }
+  type *is_array () final override { return NULL; }
+  bool is_signed () const final override { return false; }
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   type *m_other_type;
@@ -689,17 +689,17 @@  public:
   : type (other_type->m_ctxt),
     m_other_type (other_type) {}
 
-  type *dereference () FINAL OVERRIDE { return m_other_type->dereference (); }
+  type *dereference () final override { return m_other_type->dereference (); }
 
-  size_t get_size () FINAL OVERRIDE { return m_other_type->get_size (); };
+  size_t get_size () final override { return m_other_type->get_size (); };
 
-  bool is_int () const FINAL OVERRIDE { return m_other_type->is_int (); }
-  bool is_float () const FINAL OVERRIDE { return m_other_type->is_float (); }
-  bool is_bool () const FINAL OVERRIDE { return m_other_type->is_bool (); }
-  type *is_pointer () FINAL OVERRIDE { return m_other_type->is_pointer (); }
-  type *is_array () FINAL OVERRIDE { return m_other_type->is_array (); }
-  struct_ *is_struct () FINAL OVERRIDE { return m_other_type->is_struct (); }
-  bool is_signed () const FINAL OVERRIDE { return m_other_type->is_signed (); }
+  bool is_int () const final override { return m_other_type->is_int (); }
+  bool is_float () const final override { return m_other_type->is_float (); }
+  bool is_bool () const final override { return m_other_type->is_bool (); }
+  type *is_pointer () final override { return m_other_type->is_pointer (); }
+  type *is_array () final override { return m_other_type->is_array (); }
+  struct_ *is_struct () final override { return m_other_type->is_struct (); }
+  bool is_signed () const final override { return m_other_type->is_signed (); }
 
 protected:
   type *m_other_type;
@@ -712,14 +712,14 @@  public:
   memento_of_get_const (type *other_type)
   : decorated_type (other_type) {}
 
-  bool accepts_writes_from (type */*rtype*/) FINAL OVERRIDE
+  bool accepts_writes_from (type */*rtype*/) final override
   {
     /* Can't write to a "const".  */
     return false;
   }
 
   /* Strip off the "const", giving the underlying type.  */
-  type *unqualified () FINAL OVERRIDE { return m_other_type; }
+  type *unqualified () final override { return m_other_type; }
 
   virtual bool is_same_type_as (type *other)
   {
@@ -730,11 +730,11 @@  public:
 
   virtual type *is_const () { return m_other_type; }
 
-  void replay_into (replayer *) FINAL OVERRIDE;
+  void replay_into (replayer *) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 };
 
 /* Result of "gcc_jit_type_get_volatile".  */
@@ -752,15 +752,15 @@  public:
   }
 
   /* Strip off the "volatile", giving the underlying type.  */
-  type *unqualified () FINAL OVERRIDE { return m_other_type; }
+  type *unqualified () final override { return m_other_type; }
 
   virtual type *is_volatile () { return m_other_type; }
 
-  void replay_into (replayer *) FINAL OVERRIDE;
+  void replay_into (replayer *) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 };
 
 /* Result of "gcc_jit_type_get_aligned".  */
@@ -772,13 +772,13 @@  public:
     m_alignment_in_bytes (alignment_in_bytes) {}
 
   /* Strip off the alignment, giving the underlying type.  */
-  type *unqualified () FINAL OVERRIDE { return m_other_type; }
+  type *unqualified () final override { return m_other_type; }
 
-  void replay_into (replayer *) FINAL OVERRIDE;
+  void replay_into (replayer *) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   size_t m_alignment_in_bytes;
@@ -794,17 +794,17 @@  public:
 
   size_t get_num_units () const { return m_num_units; }
 
-  vector_type *dyn_cast_vector_type () FINAL OVERRIDE { return this; }
+  vector_type *dyn_cast_vector_type () final override { return this; }
 
   type *get_element_type () { return m_other_type; }
 
-  void replay_into (replayer *) FINAL OVERRIDE;
+  void replay_into (replayer *) final override;
 
-  vector_type *is_vector () FINAL OVERRIDE { return this; }
+  vector_type *is_vector () final override { return this; }
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   size_t m_num_units;
@@ -823,21 +823,21 @@  class array_type : public type
     m_num_elements (num_elements)
   {}
 
-  type *dereference () FINAL OVERRIDE;
+  type *dereference () final override;
 
-  bool is_int () const FINAL OVERRIDE { return false; }
-  bool is_float () const FINAL OVERRIDE { return false; }
-  bool is_bool () const FINAL OVERRIDE { return false; }
-  type *is_pointer () FINAL OVERRIDE { return NULL; }
-  type *is_array () FINAL OVERRIDE { return m_element_type; }
+  bool is_int () const final override { return false; }
+  bool is_float () const final override { return false; }
+  bool is_bool () const final override { return false; }
+  type *is_pointer () final override { return NULL; }
+  type *is_array () final override { return m_element_type; }
   int num_elements () { return m_num_elements; }
-  bool is_signed () const FINAL OVERRIDE { return false; }
+  bool is_signed () const final override { return false; }
 
-  void replay_into (replayer *) FINAL OVERRIDE;
+  void replay_into (replayer *) final override;
 
  private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
  private:
   location *m_loc;
@@ -854,20 +854,20 @@  public:
 		 type **param_types,
 		 int is_variadic);
 
-  type *dereference () FINAL OVERRIDE;
-  function_type *dyn_cast_function_type () FINAL OVERRIDE { return this; }
-  function_type *as_a_function_type () FINAL OVERRIDE { return this; }
+  type *dereference () final override;
+  function_type *dyn_cast_function_type () final override { return this; }
+  function_type *as_a_function_type () final override { return this; }
 
-  bool is_same_type_as (type *other) FINAL OVERRIDE;
+  bool is_same_type_as (type *other) final override;
 
-  bool is_int () const FINAL OVERRIDE { return false; }
-  bool is_float () const FINAL OVERRIDE { return false; }
-  bool is_bool () const FINAL OVERRIDE { return false; }
-  type *is_pointer () FINAL OVERRIDE { return NULL; }
-  type *is_array () FINAL OVERRIDE { return NULL; }
-  bool is_signed () const FINAL OVERRIDE { return false; }
+  bool is_int () const final override { return false; }
+  bool is_float () const final override { return false; }
+  bool is_bool () const final override { return false; }
+  type *is_pointer () final override { return NULL; }
+  type *is_array () final override { return NULL; }
+  bool is_signed () const final override { return false; }
 
-  void replay_into (replayer *) FINAL OVERRIDE;
+  void replay_into (replayer *) final override;
 
   type * get_return_type () const { return m_return_type; }
   const vec<type *> &get_param_types () const { return m_param_types; }
@@ -880,9 +880,9 @@  public:
 			     memento *ptr_type);
 
  private:
-  string * make_debug_string () FINAL OVERRIDE;
+  string * make_debug_string () final override;
   string * make_debug_string_with (const char *);
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   type *m_return_type;
@@ -909,9 +909,9 @@  public:
   compound_type * get_container () const { return m_container; }
   void set_container (compound_type *c) { m_container = c; }
 
-  void replay_into (replayer *) OVERRIDE;
+  void replay_into (replayer *) override;
 
-  void write_to_dump (dump &d) OVERRIDE;
+  void write_to_dump (dump &d) override;
 
   playback::field *
   playback_field () const
@@ -920,8 +920,8 @@  public:
   }
 
 private:
-  string * make_debug_string () OVERRIDE;
-  void write_reproducer (reproducer &r) OVERRIDE;
+  string * make_debug_string () override;
+  void write_reproducer (reproducer &r) override;
 
 protected:
   location *m_loc;
@@ -943,13 +943,13 @@  public:
       m_width (width)
   {}
 
-  void replay_into (replayer *) FINAL OVERRIDE;
+  void replay_into (replayer *) final override;
 
-  void write_to_dump (dump &d) FINAL OVERRIDE;
+  void write_to_dump (dump &d) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   int m_width;
@@ -972,16 +972,16 @@  public:
 	      int num_fields,
 	      field **fields);
 
-  type *dereference () FINAL OVERRIDE;
+  type *dereference () final override;
 
-  bool is_int () const FINAL OVERRIDE { return false; }
-  bool is_float () const FINAL OVERRIDE { return false; }
-  bool is_bool () const FINAL OVERRIDE { return false; }
-  type *is_pointer () FINAL OVERRIDE { return NULL; }
-  type *is_array () FINAL OVERRIDE { return NULL; }
-  bool is_signed () const FINAL OVERRIDE { return false; }
+  bool is_int () const final override { return false; }
+  bool is_float () const final override { return false; }
+  bool is_bool () const final override { return false; }
+  type *is_pointer () final override { return NULL; }
+  type *is_array () final override { return NULL; }
+  bool is_signed () const final override { return false; }
 
-  bool has_known_size () const FINAL OVERRIDE { return m_fields != NULL; }
+  bool has_known_size () const final override { return m_fields != NULL; }
 
   playback::compound_type *
   playback_compound_type ()
@@ -1002,20 +1002,20 @@  public:
 	   location *loc,
 	   string *name);
 
-  struct_ *dyn_cast_struct () FINAL OVERRIDE { return this; }
+  struct_ *dyn_cast_struct () final override { return this; }
 
   type *
   as_type () { return this; }
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  const char *access_as_type (reproducer &r) FINAL OVERRIDE;
+  const char *access_as_type (reproducer &r) final override;
 
-  struct_ *is_struct () FINAL OVERRIDE { return this; }
+  struct_ *is_struct () final override { return this; }
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 };
 
 // memento of struct_::set_fields
@@ -1026,16 +1026,16 @@  public:
 	  int num_fields,
 	  field **fields);
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void write_to_dump (dump &d) FINAL OVERRIDE;
+  void write_to_dump (dump &d) final override;
 
   int length () const { return m_fields.length (); }
   field *get_field (int i) const { return m_fields[i]; }
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   compound_type *m_struct_or_union;
@@ -1049,13 +1049,13 @@  public:
 	  location *loc,
 	  string *name);
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  virtual bool is_union () const FINAL OVERRIDE { return true; }
+  virtual bool is_union () const final override { return true; }
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 };
 
 /* An abstract base class for operations that visit all rvalues within an
@@ -1192,7 +1192,7 @@  public:
   rvalue *
   as_rvalue () { return this; }
 
-  const char *access_as_rvalue (reproducer &r) OVERRIDE;
+  const char *access_as_rvalue (reproducer &r) override;
   virtual const char *access_as_lvalue (reproducer &r);
   virtual bool is_global () const { return false; }
   void set_tls_model (enum gcc_jit_tls_model model);
@@ -1221,9 +1221,9 @@  public:
   lvalue *
   as_lvalue () { return this; }
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *) FINAL OVERRIDE {}
+  void visit_children (rvalue_visitor *) final override {}
 
   playback::param *
   playback_param () const
@@ -1231,15 +1231,15 @@  public:
     return static_cast <playback::param *> (m_playback_obj);
   }
 
-  param *dyn_cast_param () FINAL OVERRIDE { return this; }
+  param *dyn_cast_param () final override { return this; }
 
-  const char *access_as_rvalue (reproducer &r) FINAL OVERRIDE;
-  const char *access_as_lvalue (reproducer &r) FINAL OVERRIDE;
+  const char *access_as_rvalue (reproducer &r) final override;
+  const char *access_as_lvalue (reproducer &r) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE { return m_name; }
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override { return m_name; }
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_PRIMARY;
   }
@@ -1261,7 +1261,7 @@  public:
 	    int is_variadic,
 	    enum built_in_function builtin_id);
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
   playback::function *
   playback_function () const
@@ -1291,7 +1291,7 @@  public:
 
   bool is_variadic () const { return m_is_variadic; }
 
-  void write_to_dump (dump &d) FINAL OVERRIDE;
+  void write_to_dump (dump &d) final override;
 
   void validate ();
 
@@ -1300,8 +1300,8 @@  public:
   rvalue *get_address (location *loc);
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   location *m_loc;
@@ -1395,7 +1395,7 @@  public:
     return static_cast <playback::block *> (m_playback_obj);
   }
 
-  void write_to_dump (dump &d) FINAL OVERRIDE;
+  void write_to_dump (dump &d) final override;
 
   bool validate ();
 
@@ -1407,10 +1407,10 @@  public:
   vec <block *> get_successor_blocks () const;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
   void dump_to_dot (pretty_printer *pp);
   void dump_edges_to_dot (pretty_printer *pp);
@@ -1446,13 +1446,13 @@  public:
     free (m_initializer);
   }
 
-  void replay_into (replayer *) FINAL OVERRIDE;
+  void replay_into (replayer *) final override;
 
-  void visit_children (rvalue_visitor *) FINAL OVERRIDE {}
+  void visit_children (rvalue_visitor *) final override {}
 
-  void write_to_dump (dump &d) FINAL OVERRIDE;
+  void write_to_dump (dump &d) final override;
 
-  bool is_global () const FINAL OVERRIDE { return true; }
+  bool is_global () const final override { return true; }
 
   void
   set_initializer (const void *initializer,
@@ -1483,11 +1483,11 @@  public:
   void set_rvalue_init (rvalue *val) { m_rvalue_init = val; }
 
 private:
-  string * make_debug_string () FINAL OVERRIDE { return m_name; }
+  string * make_debug_string () final override { return m_name; }
   template <typename T>
   void write_initializer_reproducer (const char *id, reproducer &r);
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_PRIMARY;
   }
@@ -1512,18 +1512,18 @@  public:
   : rvalue (ctxt, loc, type),
     m_value (value) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *) FINAL OVERRIDE {}
+  void visit_children (rvalue_visitor *) final override {}
 
-  bool is_constant () const FINAL OVERRIDE { return true; }
+  bool is_constant () const final override { return true; }
 
-  bool get_wide_int (wide_int *out) const FINAL OVERRIDE;
+  bool get_wide_int (wide_int *out) const final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_PRIMARY;
   }
@@ -1541,14 +1541,14 @@  public:
   : rvalue (ctxt, loc, ctxt->get_type (GCC_JIT_TYPE_CONST_CHAR_PTR)),
     m_value (value) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *) FINAL OVERRIDE {}
+  void visit_children (rvalue_visitor *) final override {}
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_PRIMARY;
   }
@@ -1565,14 +1565,14 @@  public:
 				     vector_type *type,
 				     rvalue **elements);
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_PRIMARY;
   }
@@ -1591,14 +1591,14 @@  public:
   : rvalue (ctxt, loc, type)
   { }
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_PRIMARY;
   }
@@ -1621,14 +1621,14 @@  public:
     m_a (a)
   {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_UNARY;
   }
@@ -1651,14 +1651,14 @@  public:
     m_a (a),
     m_b (b) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override;
 
 private:
   enum gcc_jit_binary_op m_op;
@@ -1679,14 +1679,14 @@  public:
     m_b (b)
   {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override;
 
 private:
   enum gcc_jit_comparison m_op;
@@ -1705,14 +1705,14 @@  public:
     m_rvalue (a)
   {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_CAST;
   }
@@ -1732,14 +1732,14 @@  public:
     m_rvalue (a)
   {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_CAST;
   }
@@ -1757,12 +1757,12 @@  class base_call : public rvalue
 	     int numargs,
 	     rvalue **args);
 
-  enum precedence get_precedence () const FINAL OVERRIDE
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_POSTFIX;
   }
 
-  base_call *dyn_cast_base_call () FINAL OVERRIDE { return this; }
+  base_call *dyn_cast_base_call () final override { return this; }
 
   void set_require_tail_call (bool require_tail_call)
   {
@@ -1786,13 +1786,13 @@  public:
 	int numargs,
 	rvalue **args);
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   function *m_func;
@@ -1807,13 +1807,13 @@  public:
 		    int numargs,
 		    rvalue **args);
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   rvalue *m_fn_ptr;
@@ -1831,14 +1831,14 @@  public:
     m_index (index)
   {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_POSTFIX;
   }
@@ -1860,14 +1860,14 @@  public:
     m_field (field)
   {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_POSTFIX;
   }
@@ -1889,14 +1889,14 @@  public:
     m_field (field)
   {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_POSTFIX;
   }
@@ -1918,14 +1918,14 @@  public:
     m_field (field)
   {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_POSTFIX;
   }
@@ -1944,14 +1944,14 @@  public:
   : lvalue (ctxt, loc, val->get_type ()->dereference ()),
     m_rvalue (val) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_UNARY;
   }
@@ -1970,14 +1970,14 @@  public:
     m_lvalue (val)
   {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_UNARY;
   }
@@ -1996,14 +1996,14 @@  public:
   : rvalue (ctxt, loc, type),
     m_fn (fn) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *v) FINAL OVERRIDE;
+  void visit_children (rvalue_visitor *v) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_UNARY;
   }
@@ -2023,16 +2023,16 @@  public:
     set_scope (func);
   }
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  void visit_children (rvalue_visitor *) FINAL OVERRIDE {}
+  void visit_children (rvalue_visitor *) final override {}
 
-  void write_to_dump (dump &d) FINAL OVERRIDE;
+  void write_to_dump (dump &d) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE { return m_name; }
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
-  enum precedence get_precedence () const FINAL OVERRIDE
+  string * make_debug_string () final override { return m_name; }
+  void write_reproducer (reproducer &r) final override;
+  enum precedence get_precedence () const final override
   {
     return PRECEDENCE_PRIMARY;
   }
@@ -2047,7 +2047,7 @@  class statement : public memento
 public:
   virtual vec <block *> get_successor_blocks () const;
 
-  void write_to_dump (dump &d) FINAL OVERRIDE;
+  void write_to_dump (dump &d) final override;
 
   block *get_block () const { return m_block; }
   location *get_loc () const { return m_loc; }
@@ -2078,11 +2078,11 @@  public:
   : statement (b, loc),
     m_rvalue (rvalue) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   rvalue *m_rvalue;
@@ -2099,11 +2099,11 @@  public:
     m_lvalue (lvalue),
     m_rvalue (rvalue) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   lvalue *m_lvalue;
@@ -2123,11 +2123,11 @@  public:
     m_op (op),
     m_rvalue (rvalue) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   lvalue *m_lvalue;
@@ -2144,11 +2144,11 @@  public:
   : statement (b, loc),
     m_text (text) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   string *m_text;
@@ -2167,13 +2167,13 @@  public:
     m_on_true (on_true),
     m_on_false (on_false) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  vec <block *> get_successor_blocks () const FINAL OVERRIDE;
+  vec <block *> get_successor_blocks () const final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   rvalue *m_boolval;
@@ -2190,13 +2190,13 @@  public:
   : statement (b, loc),
     m_target (target) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  vec <block *> get_successor_blocks () const FINAL OVERRIDE;
+  vec <block *> get_successor_blocks () const final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   block *m_target;
@@ -2211,13 +2211,13 @@  public:
   : statement (b, loc),
     m_rvalue (rvalue) {}
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  vec <block *> get_successor_blocks () const FINAL OVERRIDE;
+  vec <block *> get_successor_blocks () const final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   rvalue *m_rvalue;
@@ -2240,12 +2240,12 @@  class case_ : public memento
   rvalue *get_max_value () const { return m_max_value; }
   block *get_dest_block () const { return m_dest_block; }
 
-  void replay_into (replayer *) FINAL OVERRIDE { /* empty */ }
+  void replay_into (replayer *) final override { /* empty */ }
 
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  void write_reproducer (reproducer &r) final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
+  string * make_debug_string () final override;
 
  private:
   rvalue *m_min_value;
@@ -2263,13 +2263,13 @@  public:
 	   int num_cases,
 	   case_ **cases);
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
 
-  vec <block *> get_successor_blocks () const FINAL OVERRIDE;
+  vec <block *> get_successor_blocks () const final override;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   rvalue *m_expr;
@@ -2300,7 +2300,7 @@  public:
   virtual void print (pretty_printer *pp) const;
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
+  string * make_debug_string () final override;
 
 protected:
   extended_asm *m_ext_asm;
@@ -2321,12 +2321,12 @@  public:
 
   lvalue *get_lvalue () const { return m_dest; }
 
-  void replay_into (replayer *) FINAL OVERRIDE {}
+  void replay_into (replayer *) final override {}
 
-  void print (pretty_printer *pp) const FINAL OVERRIDE;
+  void print (pretty_printer *pp) const final override;
 
 private:
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   lvalue *m_dest;
@@ -2345,12 +2345,12 @@  public:
 
   rvalue *get_rvalue () const { return m_src; }
 
-  void replay_into (replayer *) FINAL OVERRIDE {}
+  void replay_into (replayer *) final override {}
 
-  void print (pretty_printer *pp) const FINAL OVERRIDE;
+  void print (pretty_printer *pp) const final override;
 
 private:
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   rvalue *m_src;
@@ -2381,7 +2381,7 @@  public:
 			  rvalue *src);
   void add_clobber (const char *victim);
 
-  void replay_into (replayer *r) OVERRIDE;
+  void replay_into (replayer *r) override;
 
   string *get_asm_template () const { return m_asm_template; }
 
@@ -2393,7 +2393,7 @@  protected:
   void write_clobbers (reproducer &r);
 
 private:
-  string * make_debug_string () FINAL OVERRIDE;
+  string * make_debug_string () final override;
   virtual void maybe_populate_playback_blocks
     (auto_vec <playback::block *> *out) = 0;
 
@@ -2418,13 +2418,13 @@  public:
   : extended_asm (b, loc, asm_template)
   {}
 
-  void write_reproducer (reproducer &r) OVERRIDE;
-  bool is_goto () const FINAL OVERRIDE { return false; }
-  void maybe_print_gotos (pretty_printer *) const FINAL OVERRIDE {}
+  void write_reproducer (reproducer &r) override;
+  bool is_goto () const final override { return false; }
+  void maybe_print_gotos (pretty_printer *) const final override {}
 
 private:
   void maybe_populate_playback_blocks
-    (auto_vec <playback::block *> *) FINAL OVERRIDE
+    (auto_vec <playback::block *> *) final override
   {}
 };
 
@@ -2441,17 +2441,17 @@  public:
 		     block **goto_blocks,
 		     block *fallthrough_block);
 
-  void replay_into (replayer *r) FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) OVERRIDE;
+  void replay_into (replayer *r) final override;
+  void write_reproducer (reproducer &r) override;
 
-  vec <block *> get_successor_blocks () const FINAL OVERRIDE;
+  vec <block *> get_successor_blocks () const final override;
 
-  bool is_goto () const FINAL OVERRIDE { return true; }
-  void maybe_print_gotos (pretty_printer *) const FINAL OVERRIDE;
+  bool is_goto () const final override { return true; }
+  void maybe_print_gotos (pretty_printer *) const final override;
 
 private:
   void maybe_populate_playback_blocks
-    (auto_vec <playback::block *> *out) FINAL OVERRIDE;
+    (auto_vec <playback::block *> *out) final override;
 
 private:
   auto_vec <block *> m_goto_blocks;
@@ -2466,12 +2466,12 @@  class top_level_asm : public memento
 public:
   top_level_asm (context *ctxt, location *loc, string *asm_stmts);
 
-  void write_to_dump (dump &d) FINAL OVERRIDE;
+  void write_to_dump (dump &d) final override;
 
 private:
-  void replay_into (replayer *r) FINAL OVERRIDE;
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   location *m_loc;
@@ -2484,12 +2484,12 @@  public:
   global_init_rvalue (context *ctxt, lvalue *variable, rvalue *init) :
     memento (ctxt), m_variable (variable), m_init (init) {};
 
-  void write_to_dump (dump &d) FINAL OVERRIDE;
+  void write_to_dump (dump &d) final override;
 
 private:
-  void replay_into (replayer *r) FINAL OVERRIDE;
-  string * make_debug_string () FINAL OVERRIDE;
-  void write_reproducer (reproducer &r) FINAL OVERRIDE;
+  void replay_into (replayer *r) final override;
+  string * make_debug_string () final override;
+  void write_reproducer (reproducer &r) final override;
 
 private:
   lvalue *m_variable;