← Back to team overview

kicad-developers team mailing list archive

[PATCH 2/3] C++11: Add override markers

 

---
 3d-viewer/3d_material.h                            |   4 +-
 3d-viewer/3d_struct.h                              |   6 +-
 3d-viewer/3d_viewer.h                              |   4 +-
 3d-viewer/dialogs/dialog_3D_view_option.cpp        |   6 +-
 3d-viewer/modelparsers.h                           |   8 +-
 bitmap2component/bitmap2cmp_gui.cpp                |  22 +--
 common/confirm.cpp                                 |   6 +-
 common/dialog_about/dialog_about.h                 |   4 +-
 common/dialogs/dialog_image_editor.h               |  18 +-
 common/dialogs/dialog_page_settings.h              |  32 +--
 common/single_top.cpp                              |  12 +-
 cvpcb/class_DisplayFootprintsFrame.h               |  28 +--
 cvpcb/cvpcb.cpp                                    |   8 +-
 cvpcb/cvpcb_mainframe.h                            |   8 +-
 cvpcb/cvstruct.h                                   |   6 +-
 cvpcb/dialogs/dialog_config_equfiles.h             |  16 +-
 cvpcb/dialogs/dialog_display_options.h             |   8 +-
 cvpcb/dialogs/fp_conflict_assignment_selector.h    |  10 +-
 eeschema/class_libentry.h                          |   8 +-
 eeschema/class_netlist_object.h                    |   3 +-
 eeschema/dialog_erc_listbox.h                      |   4 +-
 eeschema/dialogs/dialog_annotate.cpp               |   6 +-
 eeschema/dialogs/dialog_bom.cpp                    |  18 +-
 eeschema/dialogs/dialog_choose_component.h         |  18 +-
 eeschema/dialogs/dialog_edit_component_in_lib.h    |  22 +--
 .../dialogs/dialog_edit_component_in_schematic.cpp |  24 +--
 eeschema/dialogs/dialog_edit_label.cpp             |   8 +-
 .../dialogs/dialog_edit_libentry_fields_in_lib.cpp |  20 +-
 eeschema/dialogs/dialog_edit_one_field.h           |  12 +-
 eeschema/dialogs/dialog_eeschema_config.cpp        |  20 +-
 eeschema/dialogs/dialog_eeschema_options.h         |  12 +-
 eeschema/dialogs/dialog_erc.h                      |  14 +-
 eeschema/dialogs/dialog_lib_edit_pin.h             |  10 +-
 eeschema/dialogs/dialog_lib_edit_text.h            |   4 +-
 eeschema/dialogs/dialog_lib_new_component.h        |   4 +-
 eeschema/dialogs/dialog_netlist.cpp                |  16 +-
 eeschema/dialogs/dialog_plot_schematic.h           |  10 +-
 eeschema/dialogs/dialog_print_using_printer.cpp    |  22 +--
 eeschema/dialogs/dialog_schematic_find.h           |  18 +-
 eeschema/eeschema.cpp                              |   8 +-
 eeschema/lib_arc.h                                 |  56 +++---
 eeschema/lib_bezier.h                              |  42 ++--
 eeschema/lib_circle.h                              |  54 ++---
 eeschema/lib_collectors.h                          |   2 +-
 eeschema/lib_draw_item.h                           |   8 +-
 eeschema/lib_field.h                               |  60 +++---
 eeschema/lib_pin.h                                 |  52 ++---
 eeschema/lib_polyline.h                            |  54 ++---
 eeschema/lib_rectangle.h                           |  54 ++---
 eeschema/lib_text.h                                |  58 +++---
 eeschema/libeditframe.h                            |  34 ++--
 eeschema/sch_base_frame.h                          |  28 +--
 eeschema/sch_bitmap.h                              |  40 ++--
 eeschema/sch_bus_entry.h                           |  58 +++---
 eeschema/sch_collectors.h                          |   6 +-
 eeschema/sch_component.h                           |  62 +++---
 eeschema/sch_field.h                               |  44 ++---
 eeschema/sch_item_struct.h                         |   4 +-
 eeschema/sch_junction.h                            |  50 ++---
 eeschema/sch_line.h                                |  56 +++---
 eeschema/sch_marker.h                              |  36 ++--
 eeschema/sch_no_connect.h                          |  50 ++---
 eeschema/sch_sheet.h                               | 112 +++++------
 eeschema/sch_text.h                                | 156 +++++++--------
 eeschema/schframe.h                                |  50 ++---
 eeschema/viewlib_frame.h                           |  26 +--
 gerbview/class_excellon.h                          |   2 +-
 gerbview/class_gbr_layer_box_selector.h            |   8 +-
 gerbview/class_gbr_layout.h                        |   2 +-
 gerbview/class_gbr_screen.h                        |   4 +-
 gerbview/class_gerber_draw_item.h                  |  10 +-
 gerbview/class_gerbview_layer_widget.h             |  12 +-
 gerbview/dialogs/dialog_print_using_printer.cpp    |  12 +-
 gerbview/dialogs/dialog_show_page_borders.h        |   4 +-
 .../gerbview_dialog_display_options_frame.cpp      |   6 +-
 gerbview/gerbview.cpp                              |   8 +-
 gerbview/gerbview_frame.h                          |  60 +++---
 gerbview/select_layers_to_pcb.h                    |  12 +-
 include/base_struct.h                              |   4 +-
 include/class_base_screen.h                        |   4 +-
 include/class_board_item.h                         |   4 +-
 include/class_draw_panel_gal.h                     |   2 +-
 include/class_drawpanel.h                          |   4 +-
 include/class_pcb_screen.h                         |   4 +-
 include/class_sch_screen.h                         |   6 +-
 include/class_worksheet_dataitem.h                 |  12 +-
 include/config_params.h                            |  32 +--
 include/dialog_get_component.h                     |   6 +-
 include/dialog_helpers.h                           |  12 +-
 include/dialog_hotkeys_editor.h                    |   8 +-
 include/dialog_shim.h                              |   4 +-
 include/draw_frame.h                               |   6 +-
 include/filter_reader.h                            |  12 +-
 include/gal/cairo/cairo_compositor.h               |  14 +-
 include/gal/cairo/cairo_gal.h                      |  82 ++++----
 include/gal/opengl/cached_container.h              |  10 +-
 include/gal/opengl/gpu_manager.h                   |  20 +-
 include/gal/opengl/noncached_container.h           |  10 +-
 include/gal/opengl/opengl_compositor.h             |  14 +-
 include/gal/opengl/opengl_gal.h                    |  68 +++----
 include/geometry/shape_circle.h                    |  10 +-
 include/geometry/shape_line_chain.h                |  12 +-
 include/geometry/shape_rect.h                      |  10 +-
 include/geometry/shape_segment.h                   |  12 +-
 include/html_messagebox.h                          |   2 +-
 include/kiface_i.h                                 |   8 +-
 include/kiway.h                                    |   2 +-
 include/kiway_express.h                            |   2 +-
 include/kiway_player.h                             |   2 +-
 include/plot_common.h                              | 220 ++++++++++-----------
 include/reporter.h                                 |   4 +-
 include/richio.h                                   |  12 +-
 include/tool/context_menu.h                        |   2 +-
 include/ttl/halfedge/hetriang.h                    |   2 +-
 include/view/view_group.h                          |  16 +-
 include/view/wx_view_controls.h                    |   8 +-
 include/worksheet_shape_builder.h                  |  34 ++--
 include/worksheet_viewitem.h                       |  12 +-
 include/wxBasePcbFrame.h                           |  50 ++---
 include/wxPcbStruct.h                              |  86 ++++----
 include/wxstruct.h                                 |   4 +-
 kicad/class_treeprojectfiles.h                     |   2 +-
 kicad/dialogs/dialog_template_selector.h           |   2 +-
 kicad/kicad.cpp                                    |   6 +-
 kicad/kicad.h                                      |  14 +-
 kicad/pgm_kicad.h                                  |   6 +-
 lib_dxf/drw_entities.h                             |  32 +--
 lib_dxf/intern/drw_textcodec.h                     |  12 +-
 lib_dxf/intern/dxfreader.h                         |  32 +--
 lib_dxf/intern/dxfwriter.h                         |  24 +--
 pagelayout_editor/class_pl_editor_layout.h         |   3 +-
 pagelayout_editor/class_pl_editor_screen.h         |   4 +-
 pagelayout_editor/design_tree_frame.h              |   2 +-
 pagelayout_editor/dialogs/dialog_new_dataitem.cpp  |   4 +-
 pagelayout_editor/dialogs/dialogs_for_printing.cpp |   8 +-
 pagelayout_editor/pl_editor.cpp                    |   8 +-
 pagelayout_editor/pl_editor_frame.h                |  52 ++---
 pagelayout_editor/pl_editor_undo_redo.cpp          |   2 +-
 pagelayout_editor/properties_frame.h               |   6 +-
 pcb_calculator/UnitSelector.h                      |   8 +-
 pcb_calculator/attenuators/attenuator_classes.h    |   8 +-
 pcb_calculator/pcb_calculator.cpp                  |   8 +-
 pcb_calculator/pcb_calculator.h                    |  48 ++---
 pcb_calculator/regulators_funct.cpp                |   4 +-
 pcb_calculator/transline/c_microstrip.h            |   4 +-
 pcb_calculator/transline/coax.h                    |   4 +-
 pcb_calculator/transline/coplanar.h                |   4 +-
 pcb_calculator/transline/microstrip.h              |   4 +-
 pcb_calculator/transline/rectwaveguide.h           |   4 +-
 pcb_calculator/transline/stripline.h               |   4 +-
 pcb_calculator/transline/twistedpair.h             |   4 +-
 pcbnew/block.cpp                                   |   6 +-
 pcbnew/class_board.cpp                             |   4 +-
 pcbnew/class_board.h                               |  18 +-
 pcbnew/class_board_connected_item.h                |   2 +-
 pcbnew/class_dimension.h                           |  34 ++--
 pcbnew/class_drawsegment.h                         |  32 +--
 pcbnew/class_edge_mod.h                            |  20 +-
 pcbnew/class_marker_pcb.h                          |  30 +--
 pcbnew/class_mire.h                                |  28 +--
 pcbnew/class_module.h                              |  42 ++--
 pcbnew/class_netclass.h                            |   2 +-
 pcbnew/class_pad.h                                 |  38 ++--
 pcbnew/class_pcb_layer_box_selector.h              |   8 +-
 pcbnew/class_pcb_layer_widget.h                    |  10 +-
 pcbnew/class_pcb_text.h                            |  30 +--
 pcbnew/class_text_mod.h                            |  34 ++--
 pcbnew/class_track.h                               |  80 ++++----
 pcbnew/class_zone.h                                |  32 +--
 pcbnew/collectors.h                                |  66 +++----
 pcbnew/dialogs/dialog_SVG_print.cpp                |   8 +-
 pcbnew/dialogs/dialog_cleaning_options.h           |   4 +-
 pcbnew/dialogs/dialog_copper_zones.cpp             |  16 +-
 pcbnew/dialogs/dialog_create_array.h               |  18 +-
 pcbnew/dialogs/dialog_design_rules.h               |  26 +--
 .../dialogs/dialog_design_rules_aux_helper_class.h |   2 +-
 pcbnew/dialogs/dialog_display_options.h            |   4 +-
 pcbnew/dialogs/dialog_drc.h                        |  30 +--
 pcbnew/dialogs/dialog_drclistbox.h                 |  20 +-
 .../dialogs/dialog_edit_module_for_BoardEditor.h   |  22 +--
 pcbnew/dialogs/dialog_edit_module_for_Modedit.h    |  16 +-
 pcbnew/dialogs/dialog_edit_module_text.h           |   2 +-
 pcbnew/dialogs/dialog_find.h                       |   8 +-
 pcbnew/dialogs/dialog_footprint_wizard_list.h      |   6 +-
 pcbnew/dialogs/dialog_fp_lib_table.cpp             |  44 ++---
 pcbnew/dialogs/dialog_fp_plugin_options.cpp        |  20 +-
 pcbnew/dialogs/dialog_freeroute_exchange.h         |  12 +-
 pcbnew/dialogs/dialog_gendrill.h                   |  14 +-
 pcbnew/dialogs/dialog_general_options.h            |   6 +-
 pcbnew/dialogs/dialog_global_deletion.h            |   8 +-
 .../dialogs/dialog_global_edit_tracks_and_vias.h   |   6 +-
 .../dialog_global_modules_fields_edition.cpp       |   4 +-
 pcbnew/dialogs/dialog_graphic_item_properties.cpp  |   4 +-
 .../dialog_graphic_item_properties_for_Modedit.cpp |   4 +-
 pcbnew/dialogs/dialog_graphic_items_options.h      |   4 +-
 pcbnew/dialogs/dialog_keepout_area_properties.cpp  |   4 +-
 pcbnew/dialogs/dialog_layers_setup.cpp             |  14 +-
 pcbnew/dialogs/dialog_mask_clearance.h             |   4 +-
 pcbnew/dialogs/dialog_modedit_options.cpp          |   4 +-
 pcbnew/dialogs/dialog_move_exact.h                 |  10 +-
 pcbnew/dialogs/dialog_netlist.h                    |  20 +-
 .../dialogs/dialog_non_copper_zones_properties.cpp |   4 +-
 pcbnew/dialogs/dialog_orient_footprints.cpp        |   4 +-
 pcbnew/dialogs/dialog_pad_properties.cpp           |  18 +-
 pcbnew/dialogs/dialog_pcb_text_properties.cpp      |   6 +-
 pcbnew/dialogs/dialog_plot.h                       |  18 +-
 pcbnew/dialogs/dialog_pns_diff_pair_dimensions.h   |   6 +-
 pcbnew/dialogs/dialog_pns_length_tuning_settings.h |   6 +-
 pcbnew/dialogs/dialog_pns_settings.h               |   6 +-
 pcbnew/dialogs/dialog_print_for_modedit.cpp        |  10 +-
 pcbnew/dialogs/dialog_print_using_printer.cpp      |  12 +-
 pcbnew/dialogs/dialog_select_pretty_lib.h          |   2 +-
 pcbnew/dialogs/dialog_set_grid.cpp                 |   6 +-
 pcbnew/dialogs/dialog_track_via_size.h             |   6 +-
 pcbnew/dialogs/wizard_add_fplib.h                  |  22 +--
 pcbnew/dimension.cpp                               |   4 +-
 pcbnew/eagle_plugin.h                              |  14 +-
 pcbnew/exporters/gen_modules_placefile.cpp         |   8 +-
 pcbnew/footprint_wizard_frame.h                    |  30 +--
 pcbnew/github/github_plugin.h                      |  20 +-
 pcbnew/globaleditpad.cpp                           |   6 +-
 pcbnew/gpcb_plugin.h                               |  14 +-
 pcbnew/import_dxf/dialog_dxf_import.h              |   6 +-
 pcbnew/import_dxf/dxf2brd_items.h                  | 110 +++++------
 pcbnew/kicad_plugin.h                              |  22 +--
 pcbnew/legacy_plugin.h                             |  14 +-
 pcbnew/module_editor_frame.h                       |  68 +++----
 pcbnew/modview_frame.h                             |  38 ++--
 pcbnew/netlist_reader.h                            |   4 +-
 pcbnew/pcad2kicadpcb_plugin/pcad_plugin.h          |   6 +-
 pcbnew/pcad2kicadpcb_plugin/pcb.h                  |  12 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_arc.h              |   8 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_copper_pour.h      |   2 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_line.h             |   8 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_module.h           |   4 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_pad.h              |   4 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_pad_shape.h        |   2 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_plane.h            |   2 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_polygon.h          |   6 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_text.h             |   4 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_via.h              |   2 +-
 pcbnew/pcad2kicadpcb_plugin/pcb_via_shape.h        |   2 +-
 pcbnew/pcb_draw_panel_gal.h                        |   4 +-
 pcbnew/pcb_painter.h                               |  12 +-
 pcbnew/pcbnew.cpp                                  |   8 +-
 pcbnew/printout_controler.h                        |   6 +-
 pcbnew/ratsnest.cpp                                |   2 +-
 pcbnew/ratsnest_data.h                             |   2 +-
 pcbnew/ratsnest_viewitem.h                         |  12 +-
 pcbnew/router/length_tuner_tool.h                  |   2 +-
 pcbnew/router/pns_diff_pair.h                      |   2 +-
 pcbnew/router/pns_diff_pair_placer.h               |  30 +--
 pcbnew/router/pns_dp_meander_placer.h              |  22 +--
 pcbnew/router/pns_dragger.h                        |   2 +-
 pcbnew/router/pns_joint.h                          |   2 +-
 pcbnew/router/pns_line.h                           |  14 +-
 pcbnew/router/pns_line_placer.h                    |  30 +--
 pcbnew/router/pns_meander_placer.h                 |  22 +--
 pcbnew/router/pns_meander_skew_placer.h            |   8 +-
 pcbnew/router/pns_node.h                           |   4 +-
 pcbnew/router/pns_segment.h                        |  12 +-
 pcbnew/router/pns_shove.h                          |   2 +-
 pcbnew/router/pns_solid.h                          |  10 +-
 pcbnew/router/pns_tool_base.h                      |   2 +-
 pcbnew/router/pns_via.h                            |  10 +-
 pcbnew/router/pns_walkaround.h                     |   2 +-
 pcbnew/router/router_preview_item.h                |  10 +-
 pcbnew/router/router_tool.cpp                      |   2 +-
 pcbnew/router/router_tool.h                        |   2 +-
 pcbnew/sel_layer.cpp                               |  16 +-
 pcbnew/specctra.h                                  | 122 ++++++------
 pcbnew/target_edit.cpp                             |   4 +-
 pcbnew/tools/bright_box.h                          |  10 +-
 pcbnew/tools/drawing_tool.h                        |   2 +-
 pcbnew/tools/edit_constraints.h                    |  14 +-
 pcbnew/tools/edit_points.h                         |  18 +-
 pcbnew/tools/edit_tool.h                           |   4 +-
 pcbnew/tools/module_tools.h                        |   4 +-
 pcbnew/tools/pcb_editor_control.h                  |   4 +-
 pcbnew/tools/pcbnew_control.h                      |   4 +-
 pcbnew/tools/placement_tool.h                      |   4 +-
 pcbnew/tools/point_editor.h                        |   4 +-
 pcbnew/tools/selection_area.h                      |  12 +-
 pcbnew/tools/selection_tool.h                      |   2 +-
 pcbnew/xchgmod.cpp                                 |  10 +-
 polygon/clipper.hpp                                |   4 +-
 utils/idftools/dxf2idf.h                           | 100 +++++-----
 utils/idftools/idf_common.h                        |   2 +-
 utils/idftools/idf_outlines.h                      |  30 +--
 289 files changed, 2537 insertions(+), 2545 deletions(-)

diff --git a/3d-viewer/3d_material.h b/3d-viewer/3d_material.h
index 3f4bd69..bc87413 100644
--- a/3d-viewer/3d_material.h
+++ b/3d-viewer/3d_material.h
@@ -63,13 +63,13 @@ public:
     void SetOpenGLMaterial(unsigned int aMaterialIndex, bool aUseMaterial);
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
     /** Get class name
      * @return  string "S3D_MATERIAL"
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return "S3D_MATERIAL";
     }
diff --git a/3d-viewer/3d_struct.h b/3d-viewer/3d_struct.h
index 42d26a2..e54bf9c 100644
--- a/3d-viewer/3d_struct.h
+++ b/3d-viewer/3d_struct.h
@@ -161,7 +161,7 @@ public:
     void ObjectCoordsTo3DUnits( std::vector< S3D_VERTEX >& aVertices );
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
     /**
@@ -179,7 +179,7 @@ public:
     /** Get class name
      * @return  string "S3D_MASTER"
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return "S3D_MASTER";
     }
@@ -219,7 +219,7 @@ public:
     STRUCT_3D_SHAPE* Back() const { return (STRUCT_3D_SHAPE*) Pback; }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 };
 
diff --git a/3d-viewer/3d_viewer.h b/3d-viewer/3d_viewer.h
index 351a55a..4bc3a6b 100644
--- a/3d-viewer/3d_viewer.h
+++ b/3d-viewer/3d_viewer.h
@@ -135,8 +135,8 @@ private:
     void ReCreateMainToolbar();
     void SetToolbars();
 
-    virtual void LoadSettings( wxConfigBase* aCfg );    // overload
-    virtual void SaveSettings( wxConfigBase* aCfg );    // overload
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     // Other functions
     void OnLeftClick( wxDC* DC, const wxPoint& MousePos );
diff --git a/3d-viewer/dialogs/dialog_3D_view_option.cpp b/3d-viewer/dialogs/dialog_3D_view_option.cpp
index 370d058..0474ca1 100644
--- a/3d-viewer/dialogs/dialog_3D_view_option.cpp
+++ b/3d-viewer/dialogs/dialog_3D_view_option.cpp
@@ -38,9 +38,9 @@ private:
     void initDialog();
 
     // Event functions:
-    virtual void OnShowAllClick( wxCommandEvent& event );
-    virtual void OnShowNoneClick( wxCommandEvent& event );
-    virtual void OnOKClick( wxCommandEvent& event );
+    virtual void OnShowAllClick( wxCommandEvent& event ) override;
+    virtual void OnShowNoneClick( wxCommandEvent& event ) override;
+    virtual void OnOKClick( wxCommandEvent& event ) override;
 };
 
 void EDA_3D_FRAME::Install_3D_ViewOptionDialog( wxCommandEvent& event )
diff --git a/3d-viewer/modelparsers.h b/3d-viewer/modelparsers.h
index 331af0d..7e98e9c 100644
--- a/3d-viewer/modelparsers.h
+++ b/3d-viewer/modelparsers.h
@@ -93,7 +93,7 @@ public:
     X3D_MODEL_PARSER( S3D_MASTER* aMaster );
     ~X3D_MODEL_PARSER();
 
-    virtual void Load( const wxString& aFilename, double aVrmlunits_to_3Dunits );
+    virtual void Load( const wxString& aFilename, double aVrmlunits_to_3Dunits ) override;
 
     typedef std::map< wxString, wxString > PROPERTY_MAP;
     typedef std::vector< wxXmlNode* >      NODE_LIST;
@@ -154,7 +154,7 @@ public:
     VRML2_MODEL_PARSER( S3D_MASTER* aMaster );
     ~VRML2_MODEL_PARSER();
 
-    virtual void Load( const wxString& aFilename, double aVrmlunits_to_3Dunits );
+    virtual void Load( const wxString& aFilename, double aVrmlunits_to_3Dunits ) override;
 
     /**
      * Return string representing VRML2 file in vrml2 format
@@ -203,7 +203,7 @@ public:
     VRML1_MODEL_PARSER( S3D_MASTER* aMaster );
     ~VRML1_MODEL_PARSER();
 
-    virtual void Load( const wxString& aFilename, double aVrmlunits_to_3Dunits );
+    virtual void Load( const wxString& aFilename, double aVrmlunits_to_3Dunits ) override;
 
     /**
      * Return string representing VRML2 file in vrml2 format
@@ -249,7 +249,7 @@ public:
     VRML_MODEL_PARSER( S3D_MASTER* aMaster );
     ~VRML_MODEL_PARSER();
 
-    virtual void Load( const wxString& aFilename, double aVrmlunits_to_3Dunits );
+    virtual void Load( const wxString& aFilename, double aVrmlunits_to_3Dunits ) override;
 
 private:
     VRML1_MODEL_PARSER* vrml1_parser;
diff --git a/bitmap2component/bitmap2cmp_gui.cpp b/bitmap2component/bitmap2cmp_gui.cpp
index 7302885..9b1d2ce 100644
--- a/bitmap2component/bitmap2cmp_gui.cpp
+++ b/bitmap2component/bitmap2cmp_gui.cpp
@@ -86,14 +86,14 @@ public:
     ~BM2CMP_FRAME();
 
     // overload KIWAY_PLAYER virtual
-    virtual bool OpenProjectFiles( const std::vector<wxString>& aFilenames, int aCtl=0 );
+    virtual bool OpenProjectFiles( const std::vector<wxString>& aFilenames, int aCtl=0 ) override;
 
 private:
 
     // Event handlers
-    virtual void OnPaint( wxPaintEvent& event );
-    virtual void OnLoadFile( wxCommandEvent& event );
-    virtual void OnExport( wxCommandEvent& event );
+    virtual void OnPaint( wxPaintEvent& event ) override;
+    virtual void OnLoadFile( wxCommandEvent& event ) override;
+    virtual void OnExport( wxCommandEvent& event ) override;
 
     /**
      * Generate a schematic library which comtains one component:
@@ -118,9 +118,9 @@ private:
     void OnExportLogo();
 
     void Binarize( double aThreshold );     // aThreshold = 0.0 (black level) to 1.0 (white level)
-    virtual void OnOptionsSelection( wxCommandEvent& event );
-    virtual void OnThresholdChange( wxScrollEvent& event );
-    virtual void OnResolutionChange( wxCommandEvent& event );
+    virtual void OnOptionsSelection( wxCommandEvent& event ) override;
+    virtual void OnThresholdChange( wxScrollEvent& event ) override;
+    virtual void OnResolutionChange( wxCommandEvent& event ) override;
 
     // called when texts controls which handle the image resolution
     // lose the focus, to ensure the rigyht vaules are displayed
@@ -140,7 +140,7 @@ private:
     void NegateGreyscaleImage( );
     void ExportFile( FILE* aOutfile, OUTPUT_FMT_ID aFormat );
     void updateImageInfo();
-    virtual void OnFormatChange( wxCommandEvent& event );
+    virtual void OnFormatChange( wxCommandEvent& event ) override;
 };
 
 
@@ -663,9 +663,9 @@ namespace BMP2CMP {
 
 static struct IFACE : public KIFACE_I
 {
-    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits );
+    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits ) override;
 
-    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 )
+    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 ) override
     {
         switch( aClassId )
         {
@@ -689,7 +689,7 @@ static struct IFACE : public KIFACE_I
      *
      * @return void* - and must be cast into the know type.
      */
-    virtual void* IfaceOrAddress( int aDataId )
+    virtual void* IfaceOrAddress( int aDataId ) override
     {
         return NULL;
     }
diff --git a/common/confirm.cpp b/common/confirm.cpp
index 2baf95c..fadcb25 100644
--- a/common/confirm.cpp
+++ b/common/confirm.cpp
@@ -52,9 +52,9 @@ public:
     };
 
 private:
-    virtual void OnSaveAndExit( wxCommandEvent& event ) { EndModal( wxID_YES ); }
-    virtual void OnCancel( wxCommandEvent& event ) { EndModal( wxID_CANCEL ); }
-    virtual void OnExitNoSave( wxCommandEvent& event ) { EndModal( wxID_NO ); }
+    virtual void OnSaveAndExit( wxCommandEvent& event ) override { EndModal( wxID_YES ); }
+    virtual void OnCancel( wxCommandEvent& event ) override { EndModal( wxID_CANCEL ); }
+    virtual void OnExitNoSave( wxCommandEvent& event ) override { EndModal( wxID_NO ); }
 };
 
 
diff --git a/common/dialog_about/dialog_about.h b/common/dialog_about/dialog_about.h
index 91db074..9abce47 100644
--- a/common/dialog_about/dialog_about.h
+++ b/common/dialog_about/dialog_about.h
@@ -65,8 +65,8 @@ public:
     ~dialog_about();
 private:
     void             initDialog();
-    virtual void     OnClose( wxCloseEvent& event );
-    virtual void     OnOkClick( wxCommandEvent& event );
+    virtual void     OnClose( wxCloseEvent& event ) override;
+    virtual void     OnOkClick( wxCommandEvent& event ) override;
     virtual void     OnHtmlLinkClicked( wxHtmlLinkEvent& event );
 
     // Notebook pages
diff --git a/common/dialogs/dialog_image_editor.h b/common/dialogs/dialog_image_editor.h
index 0afd153..26e9fb6 100644
--- a/common/dialogs/dialog_image_editor.h
+++ b/common/dialogs/dialog_image_editor.h
@@ -53,15 +53,15 @@ public:
     void TransfertToImage( BITMAP_BASE* aItem );
 
 private:
-    virtual void OnUndoLastChange( wxCommandEvent& event );
-    virtual void OnGreyScaleConvert( wxCommandEvent& event );
-    virtual void OnHalfSize( wxCommandEvent& event );
-    virtual void OnMirrorX_click( wxCommandEvent& event );
-    virtual void OnMirrorY_click( wxCommandEvent& event );
-    virtual void OnRotateClick( wxCommandEvent& event );
-    virtual void OnOK_Button( wxCommandEvent& aEvent );
-    virtual void OnCancel_Button( wxCommandEvent& aEvent );
-    virtual void OnRedrawPanel( wxPaintEvent& event );
+    virtual void OnUndoLastChange( wxCommandEvent& event ) override;
+    virtual void OnGreyScaleConvert( wxCommandEvent& event ) override;
+    virtual void OnHalfSize( wxCommandEvent& event ) override;
+    virtual void OnMirrorX_click( wxCommandEvent& event ) override;
+    virtual void OnMirrorY_click( wxCommandEvent& event ) override;
+    virtual void OnRotateClick( wxCommandEvent& event ) override;
+    virtual void OnOK_Button( wxCommandEvent& aEvent ) override;
+    virtual void OnCancel_Button( wxCommandEvent& aEvent ) override;
+    virtual void OnRedrawPanel( wxPaintEvent& event ) override;
 
     bool CheckValues();
 };
diff --git a/common/dialogs/dialog_page_settings.h b/common/dialogs/dialog_page_settings.h
index c80eee6..e696af8 100644
--- a/common/dialogs/dialog_page_settings.h
+++ b/common/dialogs/dialog_page_settings.h
@@ -73,32 +73,32 @@ private:
     void initDialog();  // Initialisation of member variables
 
     // event handler for wxID_OK
-    virtual void OnOkClick( wxCommandEvent& event );
+    virtual void OnOkClick( wxCommandEvent& event ) override;
 
     // event handler for wxID_CANCEL
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 
     // event handlers for page size choice
-    virtual void OnPaperSizeChoice( wxCommandEvent& event );
-    virtual void OnUserPageSizeXTextUpdated( wxCommandEvent& event );
-    virtual void OnUserPageSizeYTextUpdated( wxCommandEvent& event );
-    virtual void OnPageOrientationChoice( wxCommandEvent& event );
+    virtual void OnPaperSizeChoice( wxCommandEvent& event ) override;
+    virtual void OnUserPageSizeXTextUpdated( wxCommandEvent& event ) override;
+    virtual void OnUserPageSizeYTextUpdated( wxCommandEvent& event ) override;
+    virtual void OnPageOrientationChoice( wxCommandEvent& event ) override;
 
     // event handler for texts in title block
-    virtual void OnRevisionTextUpdated( wxCommandEvent& event );
-    virtual void OnDateTextUpdated( wxCommandEvent& event );
-    virtual void OnTitleTextUpdated( wxCommandEvent& event );
-    virtual void OnCompanyTextUpdated( wxCommandEvent& event );
-    virtual void OnComment1TextUpdated( wxCommandEvent& event );
-    virtual void OnComment2TextUpdated( wxCommandEvent& event );
-    virtual void OnComment3TextUpdated( wxCommandEvent& event );
-    virtual void OnComment4TextUpdated( wxCommandEvent& event );
+    virtual void OnRevisionTextUpdated( wxCommandEvent& event ) override;
+    virtual void OnDateTextUpdated( wxCommandEvent& event ) override;
+    virtual void OnTitleTextUpdated( wxCommandEvent& event ) override;
+    virtual void OnCompanyTextUpdated( wxCommandEvent& event ) override;
+    virtual void OnComment1TextUpdated( wxCommandEvent& event ) override;
+    virtual void OnComment2TextUpdated( wxCommandEvent& event ) override;
+    virtual void OnComment3TextUpdated( wxCommandEvent& event ) override;
+    virtual void OnComment4TextUpdated( wxCommandEvent& event ) override;
 
     // Handle button click for setting the date from the picker
-    virtual void OnDateApplyClick( wxCommandEvent& event );
+    virtual void OnDateApplyClick( wxCommandEvent& event ) override;
 
     // .kicad_wks file description selection
-    virtual void OnWksFileSelection( wxCommandEvent& event );
+    virtual void OnWksFileSelection( wxCommandEvent& event ) override;
 
     // Save in the current title block the new page settings
     // return true if changes are made, or false if not
diff --git a/common/single_top.cpp b/common/single_top.cpp
index 1f5c7ee..90dd8ee 100644
--- a/common/single_top.cpp
+++ b/common/single_top.cpp
@@ -96,9 +96,9 @@ KIWAY    Kiway( &Pgm(), KFCTL_STANDALONE );
  */
 static struct PGM_SINGLE_TOP : public PGM_BASE
 {
-    virtual bool OnPgmInit( wxApp* aWxApp );
-    virtual void OnPgmExit();
-    virtual void MacOpenFile( const wxString& aFileName );
+    virtual bool OnPgmInit( wxApp* aWxApp ) override;
+    virtual void OnPgmExit() override;
+    virtual void MacOpenFile( const wxString& aFileName ) override;
 } program;
 
 
@@ -115,7 +115,7 @@ PGM_BASE& Pgm()
  */
 struct APP_SINGLE_TOP : public wxApp
 {
-    virtual bool OnInit()
+    virtual bool OnInit() override
     {
         try
         {
@@ -141,12 +141,12 @@ struct APP_SINGLE_TOP : public wxApp
         return false;
     }
 
-    virtual int  OnExit()
+    virtual int  OnExit() override
     {
         return wxApp::OnExit();
     }
 
-    virtual int OnRun()
+    virtual int OnRun() override
     {
         int ret = -1;
 
diff --git a/cvpcb/class_DisplayFootprintsFrame.h b/cvpcb/class_DisplayFootprintsFrame.h
index 54355c3..04bd825 100644
--- a/cvpcb/class_DisplayFootprintsFrame.h
+++ b/cvpcb/class_DisplayFootprintsFrame.h
@@ -45,15 +45,15 @@ public:
     DISPLAY_FOOTPRINTS_FRAME( KIWAY* aKiway, CVPCB_MAINFRAME* aParent );
     ~DISPLAY_FOOTPRINTS_FRAME();
 
-    virtual void    OnCloseWindow( wxCloseEvent& Event );
+    virtual void    OnCloseWindow( wxCloseEvent& Event ) override;
 
     /*
      * Draws the current highlighted footprint.
      */
-    virtual void    RedrawActiveWindow( wxDC* DC, bool EraseBg );
+    virtual void    RedrawActiveWindow( wxDC* DC, bool EraseBg ) override;
 
-    virtual void    ReCreateHToolbar();
-    virtual void    ReCreateVToolbar();
+    virtual void    ReCreateHToolbar() override;
+    virtual void    ReCreateVToolbar() override;
     void    ReCreateOptToolbar();
     void    RecreateMenuBar();
 
@@ -74,7 +74,7 @@ public:
      * Function IsGridVisible() , virtual
      * @return true if the grid must be shown
      */
-    virtual bool IsGridVisible() const;
+    virtual bool IsGridVisible() const override;
 
     /**
      * Function SetGridVisibility() , virtual
@@ -82,17 +82,17 @@ public:
      * if you want to store/retrieve the grid visibility in configuration.
      * @param aVisible = true if the grid must be shown
      */
-    virtual void SetGridVisibility( bool aVisible );
+    virtual void SetGridVisibility( bool aVisible ) override;
     /**
      * Function GetGridColor() , virtual
      * @return the color of the grid
      */
-    virtual EDA_COLOR_T GetGridColor() const;
+    virtual EDA_COLOR_T GetGridColor() const override;
 
-    virtual void    OnLeftClick( wxDC* DC, const wxPoint& MousePos );
-    virtual void    OnLeftDClick( wxDC* DC, const wxPoint& MousePos );
-    virtual bool    OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu );
-    virtual bool    GeneralControl( wxDC* DC, const wxPoint& aPosition, int aHotKey = 0 );
+    virtual void    OnLeftClick( wxDC* DC, const wxPoint& MousePos ) override;
+    virtual void    OnLeftDClick( wxDC* DC, const wxPoint& MousePos ) override;
+    virtual bool    OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu ) override;
+    virtual bool    GeneralControl( wxDC* DC, const wxPoint& aPosition, int aHotKey = 0 ) override;
     void    InstallOptionsDisplay( wxCommandEvent& event );
     MODULE* Get_Module( const wxString& CmpName );
 
@@ -101,7 +101,7 @@ public:
     /**
      * Display 3D frame of current footprint selection.
      */
-    virtual void    Show3D_Frame( wxCommandEvent& event );
+    virtual void    Show3D_Frame( wxCommandEvent& event ) override;
 
     /* SaveCopyInUndoList() virtual
      * currently: do nothing in CvPcb.
@@ -109,7 +109,7 @@ public:
      */
     virtual void SaveCopyInUndoList( BOARD_ITEM* aItemToCopy,
                                      UNDO_REDO_T aTypeCommand = UR_UNSPECIFIED,
-                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) )
+                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) ) override
     {
     }
 
@@ -125,7 +125,7 @@ public:
      */
     virtual void SaveCopyInUndoList( const PICKED_ITEMS_LIST& aItemsList,
                                      UNDO_REDO_T aTypeCommand,
-                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) )
+                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) ) override
     {
         // currently: do nothing in CvPcb.
     }
diff --git a/cvpcb/cvpcb.cpp b/cvpcb/cvpcb.cpp
index 50da9e4..63a390d 100644
--- a/cvpcb/cvpcb.cpp
+++ b/cvpcb/cvpcb.cpp
@@ -97,11 +97,11 @@ static struct IFACE : public KIFACE_I
         KIFACE_I( aName, aType )
     {}
 
-    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits );
+    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits ) override;
 
-    virtual void OnKifaceEnd();
+    virtual void OnKifaceEnd() override;
 
-    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 )
+    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 ) override
     {
         switch( aClassId )
         {
@@ -130,7 +130,7 @@ static struct IFACE : public KIFACE_I
      *
      * @return void* - and must be cast into the know type.
      */
-    virtual void* IfaceOrAddress( int aDataId )
+    virtual void* IfaceOrAddress( int aDataId ) override
     {
         return NULL;
     }
diff --git a/cvpcb/cvpcb_mainframe.h b/cvpcb/cvpcb_mainframe.h
index 1166eee..724bfda 100644
--- a/cvpcb/cvpcb_mainframe.h
+++ b/cvpcb/cvpcb_mainframe.h
@@ -86,7 +86,7 @@ protected:
 public:
     ~CVPCB_MAINFRAME();
 
-    virtual bool OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl=0 );
+    virtual bool OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl=0 ) override;
 
     /**
      * @return a pointer on the Footprint Viewer frame, if exists, or NULL
@@ -113,7 +113,7 @@ public:
     void             OnCloseWindow( wxCloseEvent& Event );
     void             OnSize( wxSizeEvent& SizeEvent );
     void             ReCreateHToolbar();
-    virtual void     ReCreateMenuBar();
+    virtual void     ReCreateMenuBar() override;
 
     void             ChangeFocus( bool aMoveRight );
 
@@ -227,9 +227,9 @@ public:
      */
     void LoadProjectFile();
 
-    virtual void LoadSettings( wxConfigBase* aCfg );
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
 
-    virtual void SaveSettings( wxConfigBase* aCfg );
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     /**
      * Function DisplayStatus
diff --git a/cvpcb/cvstruct.h b/cvpcb/cvstruct.h
index 588d2b9..2724797 100644
--- a/cvpcb/cvstruct.h
+++ b/cvpcb/cvstruct.h
@@ -117,7 +117,7 @@ public:
      * this overloaded function MUST be provided for the wxLC_VIRTUAL mode
      * because real data is not handled by ITEMS_LISTBOX_BASE
      */
-    virtual wxString OnGetItemText( long item, long column ) const;
+    virtual wxString OnGetItemText( long item, long column ) const override;
 
     // Events functions:
     void     OnLeftClick( wxListEvent& event );
@@ -147,7 +147,7 @@ public:
     void     SetLibraryList( const wxArrayString& aList );
 
     wxString GetSelectedLibrary();
-    virtual wxString OnGetItemText( long item, long column ) const;
+    virtual wxString OnGetItemText( long item, long column ) const override;
 
     // Events functions:
     void     OnLeftClick( wxListEvent& event );
@@ -195,7 +195,7 @@ public:
      * this overloaded function MUST be provided for the wxLC_VIRTUAL mode
      * because real data is not handled by ITEMS_LISTBOX_BASE
      */
-    virtual wxString OnGetItemText( long item, long column ) const;
+    virtual wxString OnGetItemText( long item, long column ) const override;
 
     /*
      * Enable or disable an item
diff --git a/cvpcb/dialogs/dialog_config_equfiles.h b/cvpcb/dialogs/dialog_config_equfiles.h
index 5aba8a8..d8ad096 100644
--- a/cvpcb/dialogs/dialog_config_equfiles.h
+++ b/cvpcb/dialogs/dialog_config_equfiles.h
@@ -44,14 +44,14 @@ private:
     void Init();
 
     // Virtual event handlers
-    virtual void OnCloseWindow( wxCloseEvent& event );
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnAddFiles( wxCommandEvent& event );
-    virtual void OnEditEquFile( wxCommandEvent& event );
-    virtual void OnRemoveFiles( wxCommandEvent& event );
-    virtual void OnButtonMoveUp( wxCommandEvent& event );
-    virtual void OnButtonMoveDown( wxCommandEvent& event );
+    virtual void OnCloseWindow( wxCloseEvent& event ) override;
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnAddFiles( wxCommandEvent& event ) override;
+    virtual void OnEditEquFile( wxCommandEvent& event ) override;
+    virtual void OnRemoveFiles( wxCommandEvent& event ) override;
+    virtual void OnButtonMoveUp( wxCommandEvent& event ) override;
+    virtual void OnButtonMoveDown( wxCommandEvent& event ) override;
 
     int getEnvVarCount()                // Get the number of rows in env var table
     {
diff --git a/cvpcb/dialogs/dialog_display_options.h b/cvpcb/dialogs/dialog_display_options.h
index 3157e1d..fabca87 100644
--- a/cvpcb/dialogs/dialog_display_options.h
+++ b/cvpcb/dialogs/dialog_display_options.h
@@ -49,10 +49,10 @@ public:
 private:
     void initDialog( );
     void UpdateObjectSettings( void );
-    virtual void OnApplyClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnMiddleBtnPanEnbl( wxCommandEvent& event )
+    virtual void OnApplyClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnMiddleBtnPanEnbl( wxCommandEvent& event ) override
     {
         m_IsMiddleButtonPanLimited->Enable( m_IsMiddleButtonPan->GetValue() );
     }
diff --git a/cvpcb/dialogs/fp_conflict_assignment_selector.h b/cvpcb/dialogs/fp_conflict_assignment_selector.h
index f4c73ae..516d545 100644
--- a/cvpcb/dialogs/fp_conflict_assignment_selector.h
+++ b/cvpcb/dialogs/fp_conflict_assignment_selector.h
@@ -63,16 +63,16 @@ class DIALOG_FP_CONFLICT_ASSIGNMENT_SELECTOR : public DIALOG_FP_CONFLICT_ASSIGNM
         int GetSelection( const wxString& aReference );
 
     private:
-        virtual void OnSize( wxSizeEvent& event );
+        virtual void OnSize( wxSizeEvent& event ) override;
 
         // Virtual: called when clicking on the column title:
         // when it is a column choice, set all item choices.
-        virtual void OnColumnClick( wxListEvent& event );
+        virtual void OnColumnClick( wxListEvent& event ) override;
 
-        virtual void OnItemClicked( wxMouseEvent& event );
+        virtual void OnItemClicked( wxMouseEvent& event ) override;
 
-        virtual void OnCancelClick( wxCommandEvent& event ) { EndModal( wxID_CANCEL ); }
-        virtual void OnOKClick( wxCommandEvent& event ) { EndModal( wxID_OK ); }
+        virtual void OnCancelClick( wxCommandEvent& event ) override { EndModal( wxID_CANCEL ); }
+        virtual void OnOKClick( wxCommandEvent& event ) override { EndModal( wxID_OK ); }
 
         void recalculateColumns();
 
diff --git a/eeschema/class_libentry.h b/eeschema/class_libentry.h
index 80ca584..8e18078 100644
--- a/eeschema/class_libentry.h
+++ b/eeschema/class_libentry.h
@@ -108,7 +108,7 @@ public:
 
     virtual ~LIB_ALIAS();
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "LIB_ALIAS" );
     }
@@ -177,7 +177,7 @@ public:
     bool operator==( const LIB_ALIAS* aAlias ) const { return this == aAlias; }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 };
 
@@ -240,7 +240,7 @@ public:
         return m_me;
     }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "LIB_PART" );
     }
@@ -744,7 +744,7 @@ public:
     bool operator==( const LIB_PART*  aPart ) const { return this == aPart; }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 };
 
diff --git a/eeschema/class_netlist_object.h b/eeschema/class_netlist_object.h
index e41a91e..cebf263 100644
--- a/eeschema/class_netlist_object.h
+++ b/eeschema/class_netlist_object.h
@@ -129,8 +129,7 @@ private:
 public:
 
 #if defined(DEBUG)
-    virtual void Show( std::ostream& out, int ndx ) const;      // override
-
+    virtual void Show( std::ostream& out, int ndx ) const override;
 #endif
 
     NETLIST_OBJECT();
diff --git a/eeschema/dialog_erc_listbox.h b/eeschema/dialog_erc_listbox.h
index f74da6c..a628cac 100644
--- a/eeschema/dialog_erc_listbox.h
+++ b/eeschema/dialog_erc_listbox.h
@@ -91,7 +91,7 @@ public:
      * @param n An index into the list.
      * @return wxString - the simple html text to show in the listbox.
      */
-    virtual wxString OnGetItem( size_t n ) const
+    virtual wxString OnGetItem( size_t n ) const override
     {
         if( m_MarkerList.size() > n )
         {
@@ -109,7 +109,7 @@ public:
      * @param n An index into the list.
      * @return wxString - the simple html text to show in the listbox.
      */
-    virtual wxString OnGetItemMarkup( size_t n ) const
+    virtual wxString OnGetItemMarkup( size_t n ) const override
     {
         return OnGetItem( n );
     }
diff --git a/eeschema/dialogs/dialog_annotate.cpp b/eeschema/dialogs/dialog_annotate.cpp
index c14e833..95d0eef 100644
--- a/eeschema/dialogs/dialog_annotate.cpp
+++ b/eeschema/dialogs/dialog_annotate.cpp
@@ -60,9 +60,9 @@ private:
 
     /// Initialises member variables
     void InitValues();
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnClearAnnotationCmpClick( wxCommandEvent& event );
-    virtual void OnApplyClick( wxCommandEvent& event );
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnClearAnnotationCmpClick( wxCommandEvent& event ) override;
+    virtual void OnApplyClick( wxCommandEvent& event ) override;
 
     // User functions:
     bool GetLevel();
diff --git a/eeschema/dialogs/dialog_bom.cpp b/eeschema/dialogs/dialog_bom.cpp
index df8b0be..0881165 100644
--- a/eeschema/dialogs/dialog_bom.cpp
+++ b/eeschema/dialogs/dialog_bom.cpp
@@ -169,15 +169,15 @@ public:
     ~DIALOG_BOM();
 
 private:
-    virtual void OnPluginSelected( wxCommandEvent& event );
-    virtual void OnRunPlugin( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnHelp( wxCommandEvent& event );
-    virtual void OnAddPlugin( wxCommandEvent& event );
-    virtual void OnRemovePlugin( wxCommandEvent& event );
-    virtual void OnEditPlugin( wxCommandEvent& event );
-    virtual void OnCommandLineEdited( wxCommandEvent& event );
-    virtual void OnNameEdited( wxCommandEvent& event );
+    virtual void OnPluginSelected( wxCommandEvent& event ) override;
+    virtual void OnRunPlugin( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnHelp( wxCommandEvent& event ) override;
+    virtual void OnAddPlugin( wxCommandEvent& event ) override;
+    virtual void OnRemovePlugin( wxCommandEvent& event ) override;
+    virtual void OnEditPlugin( wxCommandEvent& event ) override;
+    virtual void OnCommandLineEdited( wxCommandEvent& event ) override;
+    virtual void OnNameEdited( wxCommandEvent& event ) override;
 
     void pluginInit();
     void installPluginsList();
diff --git a/eeschema/dialogs/dialog_choose_component.h b/eeschema/dialogs/dialog_choose_component.h
index 8d8ac24..9d83df8 100644
--- a/eeschema/dialogs/dialog_choose_component.h
+++ b/eeschema/dialogs/dialog_choose_component.h
@@ -71,17 +71,17 @@ public:
     bool IsExternalBrowserSelected() const { return m_external_browser_requested; }
 
 protected:
-    virtual void OnSearchBoxChange( wxCommandEvent& aEvent );
-    virtual void OnSearchBoxEnter( wxCommandEvent& aEvent );
-    virtual void OnInterceptSearchBoxKey( wxKeyEvent& aEvent );
+    virtual void OnSearchBoxChange( wxCommandEvent& aEvent ) override;
+    virtual void OnSearchBoxEnter( wxCommandEvent& aEvent ) override;
+    virtual void OnInterceptSearchBoxKey( wxKeyEvent& aEvent ) override;
 
-    virtual void OnTreeSelect( wxTreeEvent& aEvent );
-    virtual void OnDoubleClickTreeActivation( wxTreeEvent& aEvent );
-    virtual void OnInterceptTreeEnter( wxKeyEvent& aEvent );
-    virtual void OnTreeMouseUp( wxMouseEvent& aMouseEvent );
+    virtual void OnTreeSelect( wxTreeEvent& aEvent ) override;
+    virtual void OnDoubleClickTreeActivation( wxTreeEvent& aEvent ) override;
+    virtual void OnInterceptTreeEnter( wxKeyEvent& aEvent ) override;
+    virtual void OnTreeMouseUp( wxMouseEvent& aMouseEvent ) override;
 
-    virtual void OnStartComponentBrowser( wxMouseEvent& aEvent );
-    virtual void OnHandlePreviewRepaint( wxPaintEvent& aRepaintEvent );
+    virtual void OnStartComponentBrowser( wxMouseEvent& aEvent ) override;
+    virtual void OnHandlePreviewRepaint( wxPaintEvent& aRepaintEvent ) override;
 
 private:
     bool updateSelection();
diff --git a/eeschema/dialogs/dialog_edit_component_in_lib.h b/eeschema/dialogs/dialog_edit_component_in_lib.h
index 1622ba9..b07b1a9 100644
--- a/eeschema/dialogs/dialog_edit_component_in_lib.h
+++ b/eeschema/dialogs/dialog_edit_component_in_lib.h
@@ -50,20 +50,20 @@ private:
     void initDlg();
     void InitPanelDoc();
     void InitBasicPanel();
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnOkClick(wxCommandEvent& event);
-    virtual void DeleteAllAliasOfPart(wxCommandEvent& event);
-    virtual void DeleteAliasOfPart(wxCommandEvent& event);
-    virtual void AddAliasOfPart(wxCommandEvent& event);
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnOkClick(wxCommandEvent& event) override;
+    virtual void DeleteAllAliasOfPart(wxCommandEvent& event) override;
+    virtual void DeleteAliasOfPart(wxCommandEvent& event) override;
+    virtual void AddAliasOfPart(wxCommandEvent& event) override;
     bool ChangeNbUnitsPerPackage(int newUnit);
     bool SetUnsetConvert();
-    virtual void CopyDocFromRootToAlias(wxCommandEvent& event);
-    virtual void BrowseAndSelectDocFile(wxCommandEvent& event);
+    virtual void CopyDocFromRootToAlias(wxCommandEvent& event) override;
+    virtual void BrowseAndSelectDocFile(wxCommandEvent& event) override;
 
-    virtual void DeleteAllFootprintFilter(wxCommandEvent& event);
-    virtual void DeleteOneFootprintFilter(wxCommandEvent& event);
-    virtual void AddFootprintFilter(wxCommandEvent& event);
-    virtual void EditOneFootprintFilter( wxCommandEvent& event );
+    virtual void DeleteAllFootprintFilter(wxCommandEvent& event) override;
+    virtual void DeleteOneFootprintFilter(wxCommandEvent& event) override;
+    virtual void AddFootprintFilter(wxCommandEvent& event) override;
+    virtual void EditOneFootprintFilter( wxCommandEvent& event ) override;
 };
 
 #endif
diff --git a/eeschema/dialogs/dialog_edit_component_in_schematic.cpp b/eeschema/dialogs/dialog_edit_component_in_schematic.cpp
index 87c0d9a..b176523 100644
--- a/eeschema/dialogs/dialog_edit_component_in_schematic.cpp
+++ b/eeschema/dialogs/dialog_edit_component_in_schematic.cpp
@@ -107,18 +107,18 @@ private:
     void setRowItem( int aFieldNdx, const SCH_FIELD& aField );
 
     // event handlers
-    virtual void OnCloseDialog( wxCloseEvent& event );
-    virtual void OnListItemDeselected( wxListEvent& event );
-    virtual void OnListItemSelected( wxListEvent& event );
-    virtual void OnCancelButtonClick( wxCommandEvent& event );
-    virtual void OnOKButtonClick( wxCommandEvent& event );
-    virtual void SetInitCmp( wxCommandEvent& event );
-    virtual void addFieldButtonHandler( wxCommandEvent& event );
-    virtual void deleteFieldButtonHandler( wxCommandEvent& event );
-    virtual void moveUpButtonHandler( wxCommandEvent& event );
-    virtual void showButtonHandler( wxCommandEvent& event );
-    virtual void OnTestChipName( wxCommandEvent& event );
-    virtual void OnSelectChipName( wxCommandEvent& event );
+    virtual void OnCloseDialog( wxCloseEvent& event ) override;
+    virtual void OnListItemDeselected( wxListEvent& event ) override;
+    virtual void OnListItemSelected( wxListEvent& event ) override;
+    virtual void OnCancelButtonClick( wxCommandEvent& event ) override;
+    virtual void OnOKButtonClick( wxCommandEvent& event ) override;
+    virtual void SetInitCmp( wxCommandEvent& event ) override;
+    virtual void addFieldButtonHandler( wxCommandEvent& event ) override;
+    virtual void deleteFieldButtonHandler( wxCommandEvent& event ) override;
+    virtual void moveUpButtonHandler( wxCommandEvent& event ) override;
+    virtual void showButtonHandler( wxCommandEvent& event ) override;
+    virtual void OnTestChipName( wxCommandEvent& event ) override;
+    virtual void OnSelectChipName( wxCommandEvent& event ) override;
 
     SCH_FIELD* findField( const wxString& aFieldName );
 
diff --git a/eeschema/dialogs/dialog_edit_label.cpp b/eeschema/dialogs/dialog_edit_label.cpp
index 99bcd96..6ffb50f 100644
--- a/eeschema/dialogs/dialog_edit_label.cpp
+++ b/eeschema/dialogs/dialog_edit_label.cpp
@@ -51,10 +51,10 @@ public:
     DIALOG_LABEL_EDITOR( SCH_EDIT_FRAME* parent, SCH_TEXT* aTextItem );
 
 private:
-    virtual void InitDialog( );
-    virtual void OnEnterKey( wxCommandEvent& aEvent );
-    virtual void OnOkClick( wxCommandEvent& aEvent );
-    virtual void OnCancelClick( wxCommandEvent& aEvent );
+    virtual void InitDialog( ) override;
+    virtual void OnEnterKey( wxCommandEvent& aEvent ) override;
+    virtual void OnOkClick( wxCommandEvent& aEvent ) override;
+    virtual void OnCancelClick( wxCommandEvent& aEvent ) override;
     void TextPropertiesAccept( wxCommandEvent& aEvent );
 
     SCH_EDIT_FRAME* m_Parent;
diff --git a/eeschema/dialogs/dialog_edit_libentry_fields_in_lib.cpp b/eeschema/dialogs/dialog_edit_libentry_fields_in_lib.cpp
index 79140d1..fdb15a5 100644
--- a/eeschema/dialogs/dialog_edit_libentry_fields_in_lib.cpp
+++ b/eeschema/dialogs/dialog_edit_libentry_fields_in_lib.cpp
@@ -59,12 +59,12 @@ public:
 
 private:
     // Events handlers:
-    virtual void OnInitDialog( wxInitDialogEvent& event );
-    virtual void OnCloseDialog( wxCloseEvent& event );
+    virtual void OnInitDialog( wxInitDialogEvent& event ) override;
+    virtual void OnCloseDialog( wxCloseEvent& event ) override;
 
-    virtual void OnListItemDeselected( wxListEvent& event );
-    virtual void OnListItemSelected( wxListEvent& event );
-    virtual void addFieldButtonHandler( wxCommandEvent& event );
+    virtual void OnListItemDeselected( wxListEvent& event ) override;
+    virtual void OnListItemSelected( wxListEvent& event ) override;
+    virtual void addFieldButtonHandler( wxCommandEvent& event ) override;
 
     /**
      * Function deleteFieldButtonHandler
@@ -73,12 +73,12 @@ private:
      * If a field is empty, it is removed.
      * if not empty, the text is removed.
      */
-    virtual void deleteFieldButtonHandler( wxCommandEvent& event );
+    virtual void deleteFieldButtonHandler( wxCommandEvent& event ) override;
 
-    virtual void moveUpButtonHandler( wxCommandEvent& event );
-    virtual void OnCancelButtonClick( wxCommandEvent& event );
-    virtual void OnOKButtonClick( wxCommandEvent& event );
-    virtual void showButtonHandler( wxCommandEvent& event );
+    virtual void moveUpButtonHandler( wxCommandEvent& event ) override;
+    virtual void OnCancelButtonClick( wxCommandEvent& event ) override;
+    virtual void OnOKButtonClick( wxCommandEvent& event ) override;
+    virtual void showButtonHandler( wxCommandEvent& event ) override;
 
     // internal functions:
     void setSelectedFieldNdx( int aFieldNdx );
diff --git a/eeschema/dialogs/dialog_edit_one_field.h b/eeschema/dialogs/dialog_edit_one_field.h
index ca67965..b354a85 100644
--- a/eeschema/dialogs/dialog_edit_one_field.h
+++ b/eeschema/dialogs/dialog_edit_one_field.h
@@ -91,19 +91,19 @@ protected:
      *
      * @param aEvent is the the wX event thrown when the button is clicked, this isn't used
      */
-    virtual void OnTextValueSelectButtonClick( wxCommandEvent& aEvent );
+    virtual void OnTextValueSelectButtonClick( wxCommandEvent& aEvent ) override;
 
-    virtual void OnOkClick( wxCommandEvent& aEvent )
+    virtual void OnOkClick( wxCommandEvent& aEvent ) override
     {
         EndQuasiModal( wxID_OK );
     }
 
-    virtual void OnCancelClick( wxCommandEvent& event )
+    virtual void OnCancelClick( wxCommandEvent& event ) override
     {
         EndQuasiModal( wxID_CANCEL );
     }
 
-    virtual void OnCloseDialog( wxCloseEvent& aEvent )
+    virtual void OnCloseDialog( wxCloseEvent& aEvent ) override
     {
         EndQuasiModal( wxID_CANCEL );
     }
@@ -135,7 +135,7 @@ public:
 
     ~DIALOG_LIB_EDIT_ONE_FIELD() {};
 
-    virtual void TransfertDataToField();
+    virtual void TransfertDataToField() override;
 
     /**
      * Function GetTextField
@@ -178,7 +178,7 @@ public:
 
     // ~DIALOG_SCH_EDIT_ONE_FIELD() {};
 
-    virtual void TransfertDataToField();
+    virtual void TransfertDataToField() override;
 
     /**
      * Function GetTextField
diff --git a/eeschema/dialogs/dialog_eeschema_config.cpp b/eeschema/dialogs/dialog_eeschema_config.cpp
index b0dbbf1..485f441 100644
--- a/eeschema/dialogs/dialog_eeschema_config.cpp
+++ b/eeschema/dialogs/dialog_eeschema_config.cpp
@@ -62,12 +62,12 @@ private:
 
     //------ event handlers, overiding the fbp handlers --------------
 
-    virtual void OnCloseWindow( wxCloseEvent& event );
+    virtual void OnCloseWindow( wxCloseEvent& event ) override;
 
     /* Remove a library to the library list.
      * The real list (m_Parent->m_ComponentLibFiles) is not changed, so the change can be canceled
      */
-    virtual void OnRemoveLibClick( wxCommandEvent& event );
+    virtual void OnRemoveLibClick( wxCommandEvent& event ) override;
 
     /* Insert or add a library to the library list:
      *   The new library is put in list before (insert button) the selection,
@@ -75,14 +75,14 @@ private:
      * The real list (m_Parent->m_ComponentLibFiles) is not changed, so the change
      * can be canceled
      */
-    virtual void OnAddOrInsertLibClick( wxCommandEvent& event );
-
-    virtual void OnAddOrInsertPath( wxCommandEvent& event );
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnRemoveUserPath( wxCommandEvent& event );
-    virtual void OnButtonUpClick( wxCommandEvent& event );
-    virtual void OnButtonDownClick( wxCommandEvent& event );
+    virtual void OnAddOrInsertLibClick( wxCommandEvent& event ) override;
+
+    virtual void OnAddOrInsertPath( wxCommandEvent& event ) override;
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnRemoveUserPath( wxCommandEvent& event ) override;
+    virtual void OnButtonUpClick( wxCommandEvent& event ) override;
+    virtual void OnButtonDownClick( wxCommandEvent& event ) override;
 };
 
 
diff --git a/eeschema/dialogs/dialog_eeschema_options.h b/eeschema/dialogs/dialog_eeschema_options.h
index 6a7b317..e0f9168 100644
--- a/eeschema/dialogs/dialog_eeschema_options.h
+++ b/eeschema/dialogs/dialog_eeschema_options.h
@@ -58,14 +58,14 @@ protected:
      * Process the wxWidgets @a event produced when the user presses enter key
      * in template fieldname text control or template fieldvalue text control
      */
-    virtual void OnEnterKey( wxCommandEvent& event );
+    virtual void OnEnterKey( wxCommandEvent& event ) override;
 
     /**
      * Function OnVisibleFieldClick (virtual)
      * Process the wxWidgets @a event produced when the user click on
      * the check box which controls the field visibility
      */
-    virtual void OnVisibleFieldClick( wxCommandEvent& event );
+    virtual void OnVisibleFieldClick( wxCommandEvent& event ) override;
 
     /**
      * Function OnAddButtonClick
@@ -76,7 +76,7 @@ protected:
      *
      * Adds a new template fieldname (with default values) to the template fieldnames data
      */
-    virtual void OnAddButtonClick( wxCommandEvent& event );
+    virtual void OnAddButtonClick( wxCommandEvent& event ) override;
 
     /**
      * Function OnDeleteButtonClick
@@ -87,7 +87,7 @@ protected:
      *
      * Deletes the selected template fieldname from the template fieldnames data
      */
-    virtual void OnDeleteButtonClick( wxCommandEvent& event );
+    virtual void OnDeleteButtonClick( wxCommandEvent& event ) override;
 
     /**
      * Function OnEditControlKillFocus
@@ -121,7 +121,7 @@ protected:
      *
      * Processes data exchange between the edit panel and the selected template fieldname
      */
-    virtual void OnTemplateFieldSelected( wxListEvent& event );
+    virtual void OnTemplateFieldSelected( wxListEvent& event ) override;
 
     /**
      * Function RefreshTemplateFieldView
@@ -443,7 +443,7 @@ public:
     TEMPLATE_FIELDNAMES GetTemplateFields( void );
 
 private:
-    virtual void OnMiddleBtnPanEnbl( wxCommandEvent& event )
+    virtual void OnMiddleBtnPanEnbl( wxCommandEvent& event ) override
     {
         m_checkMiddleButtonPanLimited->Enable( GetEnableMiddleButtonPan() );
     }
diff --git a/eeschema/dialogs/dialog_erc.h b/eeschema/dialogs/dialog_erc.h
index f254e10..761603b 100644
--- a/eeschema/dialogs/dialog_erc.h
+++ b/eeschema/dialogs/dialog_erc.h
@@ -62,15 +62,15 @@ private:
     void Init();
 
     // from DIALOG_ERC_BASE:
-    virtual void OnCloseErcDialog( wxCloseEvent& event );
-    virtual void OnErcCmpClick( wxCommandEvent& event );
-    virtual void OnEraseDrcMarkersClick( wxCommandEvent& event );
-    virtual void OnButtonCloseClick( wxCommandEvent& event );
-    virtual void OnResetMatrixClick( wxCommandEvent& event );
-    virtual void OnLeftClickMarkersList( wxCommandEvent& event );
+    virtual void OnCloseErcDialog( wxCloseEvent& event ) override;
+    virtual void OnErcCmpClick( wxCommandEvent& event ) override;
+    virtual void OnEraseDrcMarkersClick( wxCommandEvent& event ) override;
+    virtual void OnButtonCloseClick( wxCommandEvent& event ) override;
+    virtual void OnResetMatrixClick( wxCommandEvent& event ) override;
+    virtual void OnLeftClickMarkersList( wxCommandEvent& event ) override;
 
     // Double click on a marker info:
-    virtual void OnLeftDblClickMarkersList( wxCommandEvent& event );
+    virtual void OnLeftDblClickMarkersList( wxCommandEvent& event ) override;
 
     void TestErc( wxArrayString* aMessagesList );
     void DisplayERC_MarkersList();
diff --git a/eeschema/dialogs/dialog_lib_edit_pin.h b/eeschema/dialogs/dialog_lib_edit_pin.h
index 3cc2327..6b57469 100644
--- a/eeschema/dialogs/dialog_lib_edit_pin.h
+++ b/eeschema/dialogs/dialog_lib_edit_pin.h
@@ -44,11 +44,11 @@ public:
     DIALOG_LIB_EDIT_PIN( EDA_DRAW_FRAME* parent, LIB_PIN* aPin );
     ~DIALOG_LIB_EDIT_PIN();
 
-    virtual void OnCloseDialog( wxCloseEvent& event );
-    virtual void OnCancelButtonClick( wxCommandEvent& event );
-    virtual void OnOKButtonClick( wxCommandEvent& event );
-    virtual void OnPaintShowPanel( wxPaintEvent& event );
-    virtual void OnPropertiesChange( wxCommandEvent& event );
+    virtual void OnCloseDialog( wxCloseEvent& event ) override;
+    virtual void OnCancelButtonClick( wxCommandEvent& event ) override;
+    virtual void OnOKButtonClick( wxCommandEvent& event ) override;
+    virtual void OnPaintShowPanel( wxPaintEvent& event ) override;
+    virtual void OnPropertiesChange( wxCommandEvent& event ) override;
 
     void SetOrientationList( const wxArrayString& list, const BITMAP_DEF* aBitmaps );
     void SetOrientation( int orientation )
diff --git a/eeschema/dialogs/dialog_lib_edit_text.h b/eeschema/dialogs/dialog_lib_edit_text.h
index a3d2ba6..f19f1e6 100644
--- a/eeschema/dialogs/dialog_lib_edit_text.h
+++ b/eeschema/dialogs/dialog_lib_edit_text.h
@@ -46,8 +46,8 @@ public:
 
 private:
     void initDlg( );
-    virtual void OnOkClick( wxCommandEvent& aEvent );
-    virtual void OnCancelClick( wxCommandEvent& aEvent );
+    virtual void OnOkClick( wxCommandEvent& aEvent ) override;
+    virtual void OnCancelClick( wxCommandEvent& aEvent ) override;
 };
 
 
diff --git a/eeschema/dialogs/dialog_lib_new_component.h b/eeschema/dialogs/dialog_lib_new_component.h
index a4fe426..f7913a3 100644
--- a/eeschema/dialogs/dialog_lib_new_component.h
+++ b/eeschema/dialogs/dialog_lib_new_component.h
@@ -39,8 +39,8 @@ public:
     /** Constructor */
     DIALOG_LIB_NEW_COMPONENT( wxWindow* parent );
 
-    virtual void SetName( const wxString& name ) { m_textName->SetValue( name ); }
-    virtual wxString GetName( void ) const { return m_textName->GetValue(); }
+    virtual void SetName( const wxString& name ) override { m_textName->SetValue( name ); }
+    virtual wxString GetName( void ) const override { return m_textName->GetValue(); }
 
     void SetReference( const wxString& reference )
     {
diff --git a/eeschema/dialogs/dialog_netlist.cpp b/eeschema/dialogs/dialog_netlist.cpp
index c432fc3..ad23649 100644
--- a/eeschema/dialogs/dialog_netlist.cpp
+++ b/eeschema/dialogs/dialog_netlist.cpp
@@ -136,24 +136,24 @@ private:
                                            const wxString & aCommandString,
                                            NETLIST_TYPE_ID aNetTypeId );
     void    InstallPageSpice();
-    virtual void    GenNetlist( wxCommandEvent& event );
+    virtual void    GenNetlist( wxCommandEvent& event ) override;
     void    RunSimulator( wxCommandEvent& event );
     void    NetlistUpdateOpt();
-    virtual void    OnCancelClick( wxCommandEvent& event );
-    virtual void    OnNetlistTypeSelection( wxNotebookEvent& event );
+    virtual void    OnCancelClick( wxCommandEvent& event ) override;
+    virtual void    OnNetlistTypeSelection( wxNotebookEvent& event ) override;
     void    SelectDefaultNetlistType( wxCommandEvent& event );
 
     /**
      * Function OnAddPlugin
      * Add a new panel for a new netlist plugin
      */
-    virtual void    OnAddPlugin( wxCommandEvent& event );
+    virtual void    OnAddPlugin( wxCommandEvent& event ) override;
 
     /**
      * Function OnDelPlugin
      * Remove a panel relative to a netlist plugin
      */
-    virtual void    OnDelPlugin( wxCommandEvent& event );
+    virtual void    OnDelPlugin( wxCommandEvent& event ) override;
 
     /**
      * Function WriteCurrentNetlistSetup
@@ -214,13 +214,13 @@ private:
      * Function OnOKClick
      * Validate info relative to a new netlist plugin
      */
-    virtual void OnOKClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnOKClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 
     /*
      * Browse plugin files, and set m_CommandStringCtrl field
      */
-    virtual void OnBrowsePlugins( wxCommandEvent& event );
+    virtual void OnBrowsePlugins( wxCommandEvent& event ) override;
 };
 
 
diff --git a/eeschema/dialogs/dialog_plot_schematic.h b/eeschema/dialogs/dialog_plot_schematic.h
index 7c1d139..e541ba4 100644
--- a/eeschema/dialogs/dialog_plot_schematic.h
+++ b/eeschema/dialogs/dialog_plot_schematic.h
@@ -63,10 +63,10 @@ public:
                                                         // and therefore should be saved
 
 private:
-    virtual void OnPlotFormatSelection( wxCommandEvent& event );
-    virtual void OnButtonPlotCurrentClick( wxCommandEvent& event );
-    virtual void OnButtonPlotAllClick( wxCommandEvent& event );
-    virtual void OnButtonCancelClick( wxCommandEvent& event );
+    virtual void OnPlotFormatSelection( wxCommandEvent& event ) override;
+    virtual void OnButtonPlotCurrentClick( wxCommandEvent& event ) override;
+    virtual void OnButtonPlotAllClick( wxCommandEvent& event ) override;
+    virtual void OnButtonCancelClick( wxCommandEvent& event ) override;
 
     void    initDlg();
 
@@ -82,7 +82,7 @@ private:
     /**
      * Set the m_outputDirectoryName variable to the selected directory from directory dialog.
      */
-    virtual void OnOutputDirectoryBrowseClicked( wxCommandEvent& event );
+    virtual void OnOutputDirectoryBrowseClicked( wxCommandEvent& event ) override;
 
     PlotFormat GetPlotFileFormat();
 
diff --git a/eeschema/dialogs/dialog_print_using_printer.cpp b/eeschema/dialogs/dialog_print_using_printer.cpp
index 265df75..7fd2f5f 100644
--- a/eeschema/dialogs/dialog_print_using_printer.cpp
+++ b/eeschema/dialogs/dialog_print_using_printer.cpp
@@ -55,12 +55,12 @@ public:
     SCH_EDIT_FRAME* GetParent() const;
 
 private:
-    virtual void OnCloseWindow( wxCloseEvent& event );
-    virtual void OnInitDialog( wxInitDialogEvent& event );
-    virtual void OnPageSetup( wxCommandEvent& event );
-    virtual void OnPrintPreview( wxCommandEvent& event );
-    virtual void OnPrintButtonClick( wxCommandEvent& event );
-    virtual void OnButtonCancelClick( wxCommandEvent& event ) { Close(); }
+    virtual void OnCloseWindow( wxCloseEvent& event ) override;
+    virtual void OnInitDialog( wxInitDialogEvent& event ) override;
+    virtual void OnPageSetup( wxCommandEvent& event ) override;
+    virtual void OnPrintPreview( wxCommandEvent& event ) override;
+    virtual void OnPrintButtonClick( wxCommandEvent& event ) override;
+    virtual void OnButtonCancelClick( wxCommandEvent& event ) override { Close(); }
 
     void GetPrintOptions();
 };
@@ -84,10 +84,10 @@ public:
         m_Parent = aParent;
     }
     SCH_EDIT_FRAME* GetSchFrameParent() { return m_Parent->GetParent(); }
-    virtual bool OnPrintPage( int page );
-    virtual bool HasPage( int page );
-    virtual bool OnBeginDocument( int startPage, int endPage );
-    virtual void GetPageInfo( int* minPage, int* maxPage, int* selPageFrom, int* selPageTo );
+    virtual bool OnPrintPage( int page ) override;
+    virtual bool HasPage( int page ) override;
+    virtual bool OnBeginDocument( int startPage, int endPage ) override;
+    virtual void GetPageInfo( int* minPage, int* maxPage, int* selPageFrom, int* selPageTo ) override;
     void DrawPage( SCH_SCREEN* aScreen );
 };
 
@@ -110,7 +110,7 @@ public:
         return ( DIALOG_PRINT_USING_PRINTER* )wxWindow::GetParent();
     }
 
-    virtual bool Show( bool show )
+    virtual bool Show( bool show ) override
     {
         bool        ret;
 
diff --git a/eeschema/dialogs/dialog_schematic_find.h b/eeschema/dialogs/dialog_schematic_find.h
index 94e2af9..070bc34 100644
--- a/eeschema/dialogs/dialog_schematic_find.h
+++ b/eeschema/dialogs/dialog_schematic_find.h
@@ -154,15 +154,15 @@ class DIALOG_SCH_FIND : public DIALOG_SCH_FIND_BASE
 {
 protected:
     // Handlers for DIALOG_SCH_FIND_BASE events.
-    virtual void OnClose( wxCloseEvent& aEvent );
-    virtual void OnUpdateFindUI( wxUpdateUIEvent& aEvent );
-    virtual void OnUpdateReplaceUI( wxUpdateUIEvent& aEvent );
-    virtual void OnUpdateWholeWordUI( wxUpdateUIEvent& aEvent );
-    virtual void OnUpdateWildcardUI( wxUpdateUIEvent& aEvent );
-
-    virtual void OnFind( wxCommandEvent& aEvent );
-    virtual void OnReplace( wxCommandEvent& aEvent );
-    virtual void OnCancel( wxCommandEvent& aEvent );
+    virtual void OnClose( wxCloseEvent& aEvent ) override;
+    virtual void OnUpdateFindUI( wxUpdateUIEvent& aEvent ) override;
+    virtual void OnUpdateReplaceUI( wxUpdateUIEvent& aEvent ) override;
+    virtual void OnUpdateWholeWordUI( wxUpdateUIEvent& aEvent ) override;
+    virtual void OnUpdateWildcardUI( wxUpdateUIEvent& aEvent ) override;
+
+    virtual void OnFind( wxCommandEvent& aEvent ) override;
+    virtual void OnReplace( wxCommandEvent& aEvent ) override;
+    virtual void OnCancel( wxCommandEvent& aEvent ) override;
 
     void SendEvent( const wxEventType& aEventType );
 
diff --git a/eeschema/eeschema.cpp b/eeschema/eeschema.cpp
index cc60966..86dabd7 100644
--- a/eeschema/eeschema.cpp
+++ b/eeschema/eeschema.cpp
@@ -68,11 +68,11 @@ static struct IFACE : public KIFACE_I
         KIFACE_I( aName, aType )
     {}
 
-    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits );
+    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits ) override;
 
-    virtual void OnKifaceEnd();
+    virtual void OnKifaceEnd() override;
 
-    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 )
+    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 ) override
     {
         switch( aClassId )
         {
@@ -121,7 +121,7 @@ static struct IFACE : public KIFACE_I
      *
      * @return void* - and must be cast into the know type.
      */
-    virtual void* IfaceOrAddress( int aDataId )
+    virtual void* IfaceOrAddress( int aDataId ) override
     {
         return NULL;
     }
diff --git a/eeschema/lib_arc.h b/eeschema/lib_arc.h
index 7ef5dfe..7802735 100644
--- a/eeschema/lib_arc.h
+++ b/eeschema/lib_arc.h
@@ -62,12 +62,12 @@ class LIB_ARC : public LIB_ITEM
      */
     virtual void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
                       EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
-                      const TRANSFORM& aTransform );
+                      const TRANSFORM& aTransform ) override;
 
     /**
      * Draw the graphics when the arc is being edited.
      */
-    virtual void drawEditGraphics( EDA_RECT* aClipBox, wxDC* aDC, EDA_COLOR_T aColor );
+    virtual void drawEditGraphics( EDA_RECT* aClipBox, wxDC* aDC, EDA_COLOR_T aColor ) override;
 
     /**
      * Calculates the center, radius, and angles at \a aPosition when the arc is being edited.
@@ -76,7 +76,7 @@ class LIB_ARC : public LIB_ITEM
      *
      * @param aPosition - The current mouse position in drawing coordinates.
      */
-    virtual void calcEdit( const wxPoint& aPosition );
+    virtual void calcEdit( const wxPoint& aPosition ) override;
 
     /**
      * Calculate the radius and angle of an arc using the start, end, and center points.
@@ -90,58 +90,58 @@ public:
 
     ~LIB_ARC() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "LIB_ARC" );
     }
 
 
-    virtual bool Save( OUTPUTFORMATTER& aFormatter );
+    virtual bool Save( OUTPUTFORMATTER& aFormatter ) override;
 
-    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual bool HitTest( const wxPoint& aPosition, int aThreshold, const TRANSFORM& aTransform ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aThreshold, const TRANSFORM& aTransform ) const override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual int GetPenSize() const;
+    virtual int GetPenSize() const override;
 
-    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) );
+    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) ) override;
 
-    virtual bool ContinueEdit( const wxPoint aNextPoint );
+    virtual bool ContinueEdit( const wxPoint aNextPoint ) override;
 
-    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false );
+    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false ) override;
 
-    virtual void SetOffset( const wxPoint& aOffset );
+    virtual void SetOffset( const wxPoint& aOffset ) override;
 
-    virtual bool Inside( EDA_RECT& aRect ) const;
+    virtual bool Inside( EDA_RECT& aRect ) const override;
 
-    virtual void Move( const wxPoint& aPosition );
+    virtual void Move( const wxPoint& aPosition ) override;
 
-    virtual wxPoint GetPosition() const { return m_Pos; }
+    virtual wxPoint GetPosition() const override { return m_Pos; }
 
-    virtual void MirrorHorizontal( const wxPoint& aCenter );
+    virtual void MirrorHorizontal( const wxPoint& aCenter ) override;
 
-    virtual void MirrorVertical( const wxPoint& aCenter );
+    virtual void MirrorVertical( const wxPoint& aCenter ) override;
 
-    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true );
+    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true ) override;
 
     virtual void Plot( PLOTTER* aPlotter, const wxPoint& aOffset, bool aFill,
-               const TRANSFORM& aTransform );
+               const TRANSFORM& aTransform ) override;
 
-    virtual int GetWidth() const { return m_Width; }
+    virtual int GetWidth() const override { return m_Width; }
 
-    virtual void SetWidth( int aWidth ) { m_Width = aWidth; }
+    virtual void SetWidth( int aWidth ) override { m_Width = aWidth; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_arc_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_arc_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
 
@@ -154,7 +154,7 @@ private:
      *      - Arc start angle.
      *      - Arc end angle.
      */
-    virtual int compare( const LIB_ITEM& aOther ) const;
+    virtual int compare( const LIB_ITEM& aOther ) const override;
 };
 
 
diff --git a/eeschema/lib_bezier.h b/eeschema/lib_bezier.h
index 22c8c10..7bf4dc2 100644
--- a/eeschema/lib_bezier.h
+++ b/eeschema/lib_bezier.h
@@ -44,7 +44,7 @@ class LIB_BEZIER : public LIB_ITEM
 
     virtual void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
                       EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
-                      const TRANSFORM& aTransform );
+                      const TRANSFORM& aTransform ) override;
 
 public:
     LIB_BEZIER( LIB_PART * aParent );
@@ -53,55 +53,55 @@ public:
 
     ~LIB_BEZIER() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "LIB_BEZIER" );
     }
 
 
-    virtual bool Save( OUTPUTFORMATTER& aFormatter );
+    virtual bool Save( OUTPUTFORMATTER& aFormatter ) override;
 
-    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg ) override;
 
     void AddPoint( const wxPoint& aPoint );
 
-    virtual void SetOffset( const wxPoint& aOffset );
+    virtual void SetOffset( const wxPoint& aOffset ) override;
 
     /**
      * @return the number of corners
      */
     unsigned GetCornerCount() const { return m_PolyPoints.size(); }
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual bool HitTest( const wxPoint& aPosRef, int aThreshold, const TRANSFORM& aTransform ) const;
+    virtual bool HitTest( const wxPoint& aPosRef, int aThreshold, const TRANSFORM& aTransform ) const override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual bool Inside( EDA_RECT& aRect ) const;
+    virtual bool Inside( EDA_RECT& aRect ) const override;
 
-    virtual void Move( const wxPoint& aPosition );
+    virtual void Move( const wxPoint& aPosition ) override;
 
-    virtual wxPoint GetPosition() const { return m_PolyPoints[0]; }
+    virtual wxPoint GetPosition() const override { return m_PolyPoints[0]; }
 
-    virtual void MirrorHorizontal( const wxPoint& aCenter );
+    virtual void MirrorHorizontal( const wxPoint& aCenter ) override;
 
-    virtual void MirrorVertical( const wxPoint& aCenter );
+    virtual void MirrorVertical( const wxPoint& aCenter ) override;
 
-    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true );
+    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true ) override;
 
     virtual void Plot( PLOTTER* aPlotter, const wxPoint& aOffset, bool aFill,
-               const TRANSFORM& aTransform );
+               const TRANSFORM& aTransform ) override;
 
-    virtual int GetWidth() const { return m_Width; }
+    virtual int GetWidth() const override { return m_Width; }
 
-    virtual void SetWidth( int aWidth ) { m_Width = aWidth; }
+    virtual void SetWidth( int aWidth ) override { m_Width = aWidth; }
 
-    virtual int GetPenSize( ) const;
+    virtual int GetPenSize( ) const override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
 
@@ -112,7 +112,7 @@ private:
      *      - Bezier horizontal (X) point position.
      *      - Bezier vertical (Y) point position.
      */
-    virtual int compare( const LIB_ITEM& aOther ) const;
+    virtual int compare( const LIB_ITEM& aOther ) const override;
 };
 
 
diff --git a/eeschema/lib_circle.h b/eeschema/lib_circle.h
index cf2fada..7614856 100644
--- a/eeschema/lib_circle.h
+++ b/eeschema/lib_circle.h
@@ -40,9 +40,9 @@ class LIB_CIRCLE : public LIB_ITEM
 
     virtual void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
                       EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
-                      const TRANSFORM& aTransform );
+                      const TRANSFORM& aTransform ) override;
 
-    virtual void calcEdit( const wxPoint& aPosition );
+    virtual void calcEdit( const wxPoint& aPosition ) override;
 
 public:
     LIB_CIRCLE( LIB_PART * aParent );
@@ -51,58 +51,58 @@ public:
 
     ~LIB_CIRCLE() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "LIB_CIRCLE" );
     }
 
 
-    virtual bool Save( OUTPUTFORMATTER& aFormatter );
+    virtual bool Save( OUTPUTFORMATTER& aFormatter ) override;
 
-    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual bool HitTest( const wxPoint& aPosRef, int aThreshold, const TRANSFORM& aTransform ) const;
+    virtual bool HitTest( const wxPoint& aPosRef, int aThreshold, const TRANSFORM& aTransform ) const override;
 
-    virtual int GetPenSize( ) const;
+    virtual int GetPenSize( ) const override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) );
+    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) ) override;
 
-    virtual bool ContinueEdit( const wxPoint aNextPoint );
+    virtual bool ContinueEdit( const wxPoint aNextPoint ) override;
 
-    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false );
+    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false ) override;
 
-    virtual void SetOffset( const wxPoint& aOffset );
+    virtual void SetOffset( const wxPoint& aOffset ) override;
 
-    virtual bool Inside( EDA_RECT& aRect ) const;
+    virtual bool Inside( EDA_RECT& aRect ) const override;
 
-    virtual void Move( const wxPoint& aPosition );
+    virtual void Move( const wxPoint& aPosition ) override;
 
-    virtual wxPoint GetPosition() const { return m_Pos; }
+    virtual wxPoint GetPosition() const override { return m_Pos; }
 
-    virtual void MirrorHorizontal( const wxPoint& aCenter );
+    virtual void MirrorHorizontal( const wxPoint& aCenter ) override;
 
-    virtual void MirrorVertical( const wxPoint& aCenter );
+    virtual void MirrorVertical( const wxPoint& aCenter ) override;
 
-    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true );
+    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true ) override;
 
     virtual void Plot( PLOTTER* aPlotter, const wxPoint& aOffset, bool aFill,
-               const TRANSFORM& aTransform );
+               const TRANSFORM& aTransform ) override;
 
-    virtual int GetWidth() const { return m_Width; }
+    virtual int GetWidth() const override { return m_Width; }
 
-    virtual void SetWidth( int aWidth ) { m_Width = aWidth; }
+    virtual void SetWidth( int aWidth ) override { m_Width = aWidth; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_circle_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_circle_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
 
@@ -114,7 +114,7 @@ private:
      *      - Circle vertical (Y) position.
      *      - Circle radius.
      */
-    virtual int compare( const LIB_ITEM& aOther ) const;
+    virtual int compare( const LIB_ITEM& aOther ) const override;
 };
 
 
diff --git a/eeschema/lib_collectors.h b/eeschema/lib_collectors.h
index 20a9312..58da7dc 100644
--- a/eeschema/lib_collectors.h
+++ b/eeschema/lib_collectors.h
@@ -114,7 +114,7 @@ public:
      * @return SEARCH_RESULT #SEARCH_QUIT if the iterator is to stop the scan,
      *                       else #SEARCH_CONTINUE;
      */
-    virtual SEARCH_RESULT Inspect( EDA_ITEM* aItem, const void* aTestData = NULL );
+    virtual SEARCH_RESULT Inspect( EDA_ITEM* aItem, const void* aTestData = NULL ) override;
 
     /**
      * Function Collect
diff --git a/eeschema/lib_draw_item.h b/eeschema/lib_draw_item.h
index cb6a460..21f92af 100644
--- a/eeschema/lib_draw_item.h
+++ b/eeschema/lib_draw_item.h
@@ -243,7 +243,7 @@ public:
         return (LIB_PART *)m_Parent;
     }
 
-    virtual bool HitTest( const wxPoint& aPosition ) const
+    virtual bool HitTest( const wxPoint& aPosition ) const override
     {
         return EDA_ITEM::HitTest( aPosition );
     }
@@ -261,7 +261,7 @@ public:
    /**
      * @return the boundary box for this, in library coordinates
      */
-    virtual const EDA_RECT GetBoundingBox() const { return EDA_ITEM::GetBoundingBox(); }
+    virtual const EDA_RECT GetBoundingBox() const override { return EDA_ITEM::GetBoundingBox(); }
 
     /**
      * Function GetMsgPanelInfo
@@ -274,7 +274,7 @@ public:
      * </p>
      * @param aList is the list to populate.
      */
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
     /**
      * Test LIB_ITEM objects for equivalence.
@@ -420,7 +420,7 @@ public:
     FILL_T GetFillMode() const { return m_Fill; }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
 private:
diff --git a/eeschema/lib_field.h b/eeschema/lib_field.h
index 2ad7374..25cddb6 100644
--- a/eeschema/lib_field.h
+++ b/eeschema/lib_field.h
@@ -72,14 +72,14 @@ class LIB_FIELD : public LIB_ITEM, public EDA_TEXT
      */
     virtual void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
                       EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
-                      const TRANSFORM& aTransform );
+                      const TRANSFORM& aTransform ) override;
 
     /**
      * Calculate the new circle at \a aPosition when editing.
      *
      * @param aPosition - The position to edit the circle in drawing coordinates.
      */
-    virtual void calcEdit( const wxPoint& aPosition );
+    virtual void calcEdit( const wxPoint& aPosition ) override;
 
 public:
 
@@ -91,7 +91,7 @@ public:
 
     ~LIB_FIELD();
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "LIB_FIELD" );
     }
@@ -132,11 +132,11 @@ public:
 
     void SetId( int aId ) { m_id = aId; }
 
-    virtual int GetPenSize( ) const;
+    virtual int GetPenSize( ) const override;
 
-    virtual bool Save( OUTPUTFORMATTER& aFormatter );
+    virtual bool Save( OUTPUTFORMATTER& aFormatter ) override;
 
-    virtual bool Load( LINE_READER& aLineReader, wxString& errorMsg );
+    virtual bool Load( LINE_READER& aLineReader, wxString& errorMsg ) override;
 
     /**
      * Copy parameters of this field to another field. Pointers are not copied.
@@ -165,13 +165,13 @@ public:
         return (m_Attributs & TEXT_NO_VISIBLE) == 0 ? true : false;
     }
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual bool HitTest( const wxPoint &aPosition, int aThreshold, const TRANSFORM& aTransform ) const;
+    virtual bool HitTest( const wxPoint &aPosition, int aThreshold, const TRANSFORM& aTransform ) const override;
 
     void operator=( const LIB_FIELD& field )
     {
@@ -205,15 +205,15 @@ public:
      */
     wxString GetFullText( int unit = 1 );
 
-    virtual EDA_COLOR_T GetDefaultColor();
+    virtual EDA_COLOR_T GetDefaultColor() override;
 
-    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) );
+    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) ) override;
 
-    virtual bool ContinueEdit( const wxPoint aNextPoint );
+    virtual bool ContinueEdit( const wxPoint aNextPoint ) override;
 
-    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false );
+    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false ) override;
 
-    virtual void Rotate();
+    virtual void Rotate() override;
 
     /**
      * Sets the field text to \a aText.
@@ -226,34 +226,34 @@ public:
      *
      * @param aText - New text value.
      */
-    virtual void SetText( const wxString& aText );
+    virtual void SetText( const wxString& aText ) override;
 
-    virtual void SetOffset( const wxPoint& aOffset );
+    virtual void SetOffset( const wxPoint& aOffset ) override;
 
-    virtual bool Inside( EDA_RECT& aRect ) const;
+    virtual bool Inside( EDA_RECT& aRect ) const override;
 
-    virtual void Move( const wxPoint& aPosition );
+    virtual void Move( const wxPoint& aPosition ) override;
 
-    virtual wxPoint GetPosition() const { return m_Pos; }
+    virtual wxPoint GetPosition() const override { return m_Pos; }
 
-    virtual void MirrorHorizontal( const wxPoint& aCenter );
+    virtual void MirrorHorizontal( const wxPoint& aCenter ) override;
 
-    virtual void MirrorVertical( const wxPoint& aCenter );
+    virtual void MirrorVertical( const wxPoint& aCenter ) override;
 
-    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true );
+    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true ) override;
 
     virtual void Plot( PLOTTER* aPlotter, const wxPoint& aOffset, bool aFill,
-               const TRANSFORM& aTransform );
+               const TRANSFORM& aTransform ) override;
 
-    virtual int GetWidth() const { return m_Thickness; }
+    virtual int GetWidth() const override { return m_Thickness; }
 
-    virtual void SetWidth( int aWidth ) { m_Thickness = aWidth; }
+    virtual void SetWidth( int aWidth ) override { m_Thickness = aWidth; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  move_field_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  move_field_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
 
@@ -269,7 +269,7 @@ private:
      *      - Field width.
      *      - Field height.
      */
-    virtual int compare( const LIB_ITEM& aOther ) const;
+    virtual int compare( const LIB_ITEM& aOther ) const override;
 };
 
 typedef std::vector< LIB_FIELD > LIB_FIELDS;
diff --git a/eeschema/lib_pin.h b/eeschema/lib_pin.h
index f65aa19..a4b22f5 100644
--- a/eeschema/lib_pin.h
+++ b/eeschema/lib_pin.h
@@ -117,7 +117,7 @@ class LIB_PIN : public LIB_ITEM
      */
     virtual void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
                       EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
-                      const TRANSFORM& aTransform );
+                      const TRANSFORM& aTransform ) override;
 
 public:
     LIB_PIN( LIB_PART*      aParent );
@@ -126,28 +126,28 @@ public:
 
     ~LIB_PIN() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "LIB_PIN" );
     }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;   // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 
-    virtual bool Save( OUTPUTFORMATTER& aFormatter );
+    virtual bool Save( OUTPUTFORMATTER& aFormatter ) override;
 
-    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual bool HitTest( const wxPoint &aPosRef, int aThreshold, const TRANSFORM& aTransform ) const;
+    virtual bool HitTest( const wxPoint &aPosRef, int aThreshold, const TRANSFORM& aTransform ) const override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation );
+    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation ) override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     /**
      * Function PinEndPoint
@@ -249,7 +249,7 @@ public:
      */
     void SetOrientation( int aOrientation );
 
-    virtual void Rotate();
+    virtual void Rotate() override;
 
     int GetShape() const { return m_shape; }
 
@@ -353,7 +353,7 @@ public:
      */
     bool IsVisible() { return ( m_attributes & PIN_INVISIBLE ) == 0; }
 
-    virtual int GetPenSize() const;
+    virtual int GetPenSize() const override;
 
     /**
      * Function DrawPinSymbol
@@ -474,32 +474,32 @@ public:
      */
     static const BITMAP_DEF* GetElectricalTypeSymbols();
 
-    virtual void SetOffset( const wxPoint& aOffset );
+    virtual void SetOffset( const wxPoint& aOffset ) override;
 
-    virtual bool Inside( EDA_RECT& aRect ) const;
+    virtual bool Inside( EDA_RECT& aRect ) const override;
 
-    virtual void Move( const wxPoint& aPosition );
+    virtual void Move( const wxPoint& aPosition ) override;
 
-    virtual wxPoint GetPosition() const { return m_position; }
+    virtual wxPoint GetPosition() const override { return m_position; }
 
-    virtual void MirrorHorizontal( const wxPoint& aCenter );
+    virtual void MirrorHorizontal( const wxPoint& aCenter ) override;
 
-    virtual void MirrorVertical( const wxPoint& aCenter );
+    virtual void MirrorVertical( const wxPoint& aCenter ) override;
 
-    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true );
+    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true ) override;
 
     virtual void Plot( PLOTTER* aPlotter, const wxPoint& aOffset, bool aFill,
-               const TRANSFORM& aTransform );
+               const TRANSFORM& aTransform ) override;
 
-    virtual int GetWidth() const { return m_width; }
+    virtual int GetWidth() const override { return m_width; }
 
-    virtual void SetWidth( int aWidth );
+    virtual void SetWidth( int aWidth ) override;
 
-    virtual BITMAP_DEF GetMenuImage() const;
+    virtual BITMAP_DEF GetMenuImage() const override;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
 
@@ -512,7 +512,7 @@ private:
      *      - Pin horizontal (X) position.
      *      - Pin vertical (Y) position.
      */
-    virtual int compare( const LIB_ITEM& aOther ) const;
+    virtual int compare( const LIB_ITEM& aOther ) const override;
 };
 
 
diff --git a/eeschema/lib_polyline.h b/eeschema/lib_polyline.h
index 1eb5b9b..2a64ee8 100644
--- a/eeschema/lib_polyline.h
+++ b/eeschema/lib_polyline.h
@@ -41,9 +41,9 @@ class LIB_POLYLINE : public LIB_ITEM
 
     virtual void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
                       EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
-                      const TRANSFORM& aTransform );
+                      const TRANSFORM& aTransform ) override;
 
-    virtual void calcEdit( const wxPoint& aPosition );
+    virtual void calcEdit( const wxPoint& aPosition ) override;
 
 public:
     LIB_POLYLINE( LIB_PART * aParent );
@@ -52,15 +52,15 @@ public:
 
     ~LIB_POLYLINE() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "LIB_POLYLINE" );
     }
 
 
-    virtual bool Save( OUTPUTFORMATTER& aFormatter );
+    virtual bool Save( OUTPUTFORMATTER& aFormatter ) override;
 
-    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg ) override;
 
     void AddPoint( const wxPoint& aPoint );
 
@@ -74,48 +74,48 @@ public:
      */
     unsigned GetCornerCount() const { return m_PolyPoints.size(); }
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual bool HitTest( const wxPoint &aPosition, int aThreshold, const TRANSFORM& aTransform ) const;
+    virtual bool HitTest( const wxPoint &aPosition, int aThreshold, const TRANSFORM& aTransform ) const override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual int GetPenSize( ) const;
+    virtual int GetPenSize( ) const override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) );
+    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) ) override;
 
-    virtual bool ContinueEdit( const wxPoint aNextPoint );
+    virtual bool ContinueEdit( const wxPoint aNextPoint ) override;
 
-    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false );
+    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false ) override;
 
-    virtual void SetOffset( const wxPoint& aOffset );
+    virtual void SetOffset( const wxPoint& aOffset ) override;
 
-    virtual bool Inside( EDA_RECT& aRect ) const;
+    virtual bool Inside( EDA_RECT& aRect ) const override;
 
-    virtual void Move( const wxPoint& aPosition );
+    virtual void Move( const wxPoint& aPosition ) override;
 
-    virtual wxPoint GetPosition() const { return m_PolyPoints[0]; }
+    virtual wxPoint GetPosition() const override { return m_PolyPoints[0]; }
 
-    virtual void MirrorHorizontal( const wxPoint& aCenter );
+    virtual void MirrorHorizontal( const wxPoint& aCenter ) override;
 
-    virtual void MirrorVertical( const wxPoint& aCenter );
+    virtual void MirrorVertical( const wxPoint& aCenter ) override;
 
-    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true );
+    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true ) override;
 
     virtual void Plot( PLOTTER* aPlotter, const wxPoint& aOffset, bool aFill,
-               const TRANSFORM& aTransform );
+               const TRANSFORM& aTransform ) override;
 
-    virtual int GetWidth() const { return m_Width; }
+    virtual int GetWidth() const override { return m_Width; }
 
-    virtual void SetWidth( int aWidth ) { m_Width = aWidth; }
+    virtual void SetWidth( int aWidth ) override { m_Width = aWidth; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_polygon_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_polygon_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
 
@@ -126,7 +126,7 @@ private:
      *      - Line segment point horizontal (X) position.
      *      - Line segment point vertical (Y) position.
      */
-    virtual int compare( const LIB_ITEM& aOther ) const;
+    virtual int compare( const LIB_ITEM& aOther ) const override;
 };
 
 
diff --git a/eeschema/lib_rectangle.h b/eeschema/lib_rectangle.h
index 376796c..67898c4 100644
--- a/eeschema/lib_rectangle.h
+++ b/eeschema/lib_rectangle.h
@@ -43,9 +43,9 @@ class LIB_RECTANGLE  : public LIB_ITEM
 
     virtual void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
                       EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
-                      const TRANSFORM& aTransform );
+                      const TRANSFORM& aTransform ) override;
 
-    virtual void calcEdit( const wxPoint& aPosition );
+    virtual void calcEdit( const wxPoint& aPosition ) override;
 
 public:
     LIB_RECTANGLE( LIB_PART * aParent );
@@ -54,59 +54,59 @@ public:
 
     ~LIB_RECTANGLE() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "LIB_RECTANGLE" );
     }
 
     void SetEndPosition( const wxPoint& aPosition ) { m_End = aPosition; }
 
-    virtual bool Save( OUTPUTFORMATTER& aFormatter );
+    virtual bool Save( OUTPUTFORMATTER& aFormatter ) override;
 
-    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual bool HitTest( const wxPoint &aPosRef, int aThreshold, const TRANSFORM& aTransform ) const;
+    virtual bool HitTest( const wxPoint &aPosRef, int aThreshold, const TRANSFORM& aTransform ) const override;
 
-    virtual int GetPenSize( ) const;
+    virtual int GetPenSize( ) const override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) );
+    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) ) override;
 
-    virtual bool ContinueEdit( const wxPoint aNextPoint );
+    virtual bool ContinueEdit( const wxPoint aNextPoint ) override;
 
-    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false );
+    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false ) override;
 
-    virtual void SetOffset( const wxPoint& aOffset );
+    virtual void SetOffset( const wxPoint& aOffset ) override;
 
-    virtual bool Inside( EDA_RECT& aRect ) const;
+    virtual bool Inside( EDA_RECT& aRect ) const override;
 
-    virtual void Move( const wxPoint& aPosition );
+    virtual void Move( const wxPoint& aPosition ) override;
 
-    virtual wxPoint GetPosition() const { return m_Pos; }
+    virtual wxPoint GetPosition() const override { return m_Pos; }
 
-    virtual void MirrorHorizontal( const wxPoint& aCenter );
+    virtual void MirrorHorizontal( const wxPoint& aCenter ) override;
 
-    virtual void MirrorVertical( const wxPoint& aCenter );
+    virtual void MirrorVertical( const wxPoint& aCenter ) override;
 
-    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true );
+    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true ) override;
 
     virtual void Plot( PLOTTER* aPlotter, const wxPoint& aOffset, bool aFill,
-               const TRANSFORM& aTransform );
+               const TRANSFORM& aTransform ) override;
 
-    virtual int GetWidth() const { return m_Width; }
+    virtual int GetWidth() const override { return m_Width; }
 
-    virtual void SetWidth( int aWidth ) { m_Width = aWidth; }
+    virtual void SetWidth( int aWidth ) override { m_Width = aWidth; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_rectangle_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_rectangle_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
 
@@ -119,7 +119,7 @@ private:
      *      - Rectangle horizontal (X) end position.
      *      - Rectangle vertical (Y) end position.
      */
-    virtual int compare( const LIB_ITEM& aOther ) const;
+    virtual int compare( const LIB_ITEM& aOther ) const override;
 };
 
 
diff --git a/eeschema/lib_text.h b/eeschema/lib_text.h
index 65f691c..ac43290 100644
--- a/eeschema/lib_text.h
+++ b/eeschema/lib_text.h
@@ -50,9 +50,9 @@ class LIB_TEXT : public LIB_ITEM, public EDA_TEXT
 
     virtual void drawGraphic( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
                       EDA_COLOR_T aColor, GR_DRAWMODE aDrawMode, void* aData,
-                      const TRANSFORM& aTransform );
+                      const TRANSFORM& aTransform ) override;
 
-    virtual void calcEdit( const wxPoint& aPosition );
+    virtual void calcEdit( const wxPoint& aPosition ) override;
 
 public:
     LIB_TEXT( LIB_PART * aParent );
@@ -61,7 +61,7 @@ public:
 
     ~LIB_TEXT() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "LIB_TEXT" );
     }
@@ -76,15 +76,15 @@ public:
      *
      * @param aText - New text value.
      */
-    virtual void SetText( const wxString& aText );
+    virtual void SetText( const wxString& aText ) override;
 
-    virtual bool Save( OUTPUTFORMATTER& aFormatter );
+    virtual bool Save( OUTPUTFORMATTER& aFormatter ) override;
 
-    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLineReader, wxString& aErrorMsg ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual bool HitTest( const wxPoint &aPosition, int aThreshold, const TRANSFORM& aTransform ) const;
+    virtual bool HitTest( const wxPoint &aPosition, int aThreshold, const TRANSFORM& aTransform ) const override;
 
     bool HitTest( const EDA_RECT& aRect ) const
     {
@@ -92,46 +92,46 @@ public:
     }
 
 
-    virtual int GetPenSize( ) const;
+    virtual int GetPenSize( ) const override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual void Rotate();
+    virtual void Rotate() override;
 
-    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) );
+    virtual void BeginEdit( STATUS_FLAGS aEditMode, const wxPoint aStartPoint = wxPoint( 0, 0 ) ) override;
 
-    virtual bool ContinueEdit( const wxPoint aNextPoint );
+    virtual bool ContinueEdit( const wxPoint aNextPoint ) override;
 
-    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false );
+    virtual void EndEdit( const wxPoint& aPosition, bool aAbort = false ) override;
 
-    virtual void SetOffset( const wxPoint& aOffset );
+    virtual void SetOffset( const wxPoint& aOffset ) override;
 
-    virtual bool Inside( EDA_RECT& aRect ) const;
+    virtual bool Inside( EDA_RECT& aRect ) const override;
 
-    virtual void Move( const wxPoint& aPosition );
+    virtual void Move( const wxPoint& aPosition ) override;
 
-    virtual wxPoint GetPosition() const { return m_Pos; }
+    virtual wxPoint GetPosition() const override { return m_Pos; }
 
-    virtual void MirrorHorizontal( const wxPoint& aCenter );
+    virtual void MirrorHorizontal( const wxPoint& aCenter ) override;
 
-    virtual void MirrorVertical( const wxPoint& aCenter );
+    virtual void MirrorVertical( const wxPoint& aCenter ) override;
 
-    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true );
+    virtual void Rotate( const wxPoint& aCenter, bool aRotateCCW = true ) override;
 
     virtual void Plot( PLOTTER* aPlotter, const wxPoint& aOffset, bool aFill,
-               const TRANSFORM& aTransform );
+               const TRANSFORM& aTransform ) override;
 
-    virtual int GetWidth() const { return m_Thickness; }
+    virtual int GetWidth() const override { return m_Thickness; }
 
-    virtual void SetWidth( int aWidth ) { m_Thickness = aWidth; }
+    virtual void SetWidth( int aWidth ) override { m_Thickness = aWidth; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_text_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_text_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
 
@@ -145,7 +145,7 @@ private:
      *      - Text width.
      *      - Text height.
      */
-    virtual int compare( const LIB_ITEM& aOther ) const;
+    virtual int compare( const LIB_ITEM& aOther ) const override;
 };
 
 
diff --git a/eeschema/libeditframe.h b/eeschema/libeditframe.h
index e577281..727109f 100644
--- a/eeschema/libeditframe.h
+++ b/eeschema/libeditframe.h
@@ -175,7 +175,7 @@ public:
      static void SetDefaultPinLength( int aLength ) { m_defaultPinLength = aLength; }
 
 
-    virtual void ReCreateMenuBar();
+    virtual void ReCreateMenuBar() override;
 
     /**
      * Function EnsureActiveLibExists
@@ -307,24 +307,24 @@ public:
      * Display reference like in schematic (a reference U is shown U? or U?A)
      * update status bar and info shown in the bottom of the window
      */
-    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg );
+    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg ) override;
 
     void OnCloseWindow( wxCloseEvent& Event );
-    virtual void ReCreateHToolbar();
-    virtual void ReCreateVToolbar();
+    virtual void ReCreateHToolbar() override;
+    virtual void ReCreateVToolbar() override;
     void CreateOptionToolbar();
-    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos );
-    virtual bool OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu );
-    virtual double BestZoom();
-    virtual void OnLeftDClick( wxDC* DC, const wxPoint& MousePos );
+    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos ) override;
+    virtual bool OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu ) override;
+    virtual double BestZoom() override;
+    virtual void OnLeftDClick( wxDC* DC, const wxPoint& MousePos ) override;
 
-    virtual bool OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, EDA_ITEM* aItem = NULL );
+    virtual bool OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, EDA_ITEM* aItem = NULL ) override;
 
-    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 );
+    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 ) override;
 
-    virtual void LoadSettings( wxConfigBase* aCfg );
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
 
-    virtual void SaveSettings( wxConfigBase* aCfg );
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     /**
      * Function CloseWindow
@@ -420,7 +420,7 @@ private:
      * The library list can be changed by the schematic editor after reloading a new schematic
      * and the current library can point a non existent lib.
      */
-    virtual void OnActivate( wxActivateEvent& event );
+    virtual void OnActivate( wxActivateEvent& event ) override;
 
     // General:
 
@@ -594,13 +594,13 @@ public:
      * returns the block command (BLOCK_MOVE, BLOCK_COPY...) corresponding to
      * the \a aKey (ALT, SHIFT ALT ..)
      */
-    virtual int BlockCommand( int aKey );
+    virtual int BlockCommand( int aKey ) override;
 
     /**
      * Function HandleBlockPlace
      * handles the block place command.
      */
-    virtual void HandleBlockPlace( wxDC* DC );
+    virtual void HandleBlockPlace( wxDC* DC ) override;
 
     /**
      * Function HandleBlockEnd
@@ -608,7 +608,7 @@ public:
      * @return If command finished (zoom, delete ...) false is returned otherwise true
      *         is returned indicating more processing is required.
      */
-    virtual bool HandleBlockEnd( wxDC* DC );
+    virtual bool HandleBlockEnd( wxDC* DC ) override;
 
     /**
      * Function PlacePin
@@ -653,7 +653,7 @@ public:
      * @param aData = a pointer on an auxiliary data (not always used, NULL if not used)
      */
     virtual void PrintPage( wxDC* aDC, LSET aPrintMask,
-                            bool aPrintMirrorMode, void* aData = NULL );
+                            bool aPrintMirrorMode, void* aData = NULL ) override;
 
     /**
      * Function SVG_PlotComponent
diff --git a/eeschema/sch_base_frame.h b/eeschema/sch_base_frame.h
index 5da3e29..8275faa 100644
--- a/eeschema/sch_base_frame.h
+++ b/eeschema/sch_base_frame.h
@@ -53,7 +53,7 @@ public:
                     const wxPoint& aPosition, const wxSize& aSize,
                     long aStyle, const wxString & aFrameName );
 
-    virtual SCH_SCREEN* GetScreen() const;
+    virtual SCH_SCREEN* GetScreen() const override;
 
     /**
      * Function GetZoomLevelIndicator
@@ -61,31 +61,31 @@ public:
      * level indicator in dialogs.
      * Virtual from the base class
      */
-    virtual const wxString GetZoomLevelIndicator() const;
+    virtual const wxString GetZoomLevelIndicator() const override;
 
-    virtual void SetPageSettings( const PAGE_INFO& aPageSettings );
-    virtual const PAGE_INFO& GetPageSettings () const;
-    virtual const wxSize GetPageSizeIU() const;
+    virtual void SetPageSettings( const PAGE_INFO& aPageSettings ) override;
+    virtual const PAGE_INFO& GetPageSettings () const override;
+    virtual const wxSize GetPageSizeIU() const override;
 
-    virtual const wxPoint& GetAuxOrigin() const;
-    virtual void SetAuxOrigin( const wxPoint& aPosition );
+    virtual const wxPoint& GetAuxOrigin() const override;
+    virtual void SetAuxOrigin( const wxPoint& aPosition ) override;
 
-    virtual const wxPoint& GetGridOrigin() const
+    virtual const wxPoint& GetGridOrigin() const override
     {
         static wxPoint zero;
         return zero;
     }
-    virtual void SetGridOrigin( const wxPoint& aPoint ) {}
+    virtual void SetGridOrigin( const wxPoint& aPoint ) override {}
 
     // Virtual from EDA_DRAW_FRAME
     // the background color of the draw canvas:
-    virtual EDA_COLOR_T GetDrawBgColor() const;
-    virtual void SetDrawBgColor( EDA_COLOR_T aColor);
+    virtual EDA_COLOR_T GetDrawBgColor() const override;
+    virtual void SetDrawBgColor( EDA_COLOR_T aColor) override;
 
-    virtual const TITLE_BLOCK& GetTitleBlock() const;
-    virtual void SetTitleBlock( const TITLE_BLOCK& aTitleBlock );
+    virtual const TITLE_BLOCK& GetTitleBlock() const override;
+    virtual void SetTitleBlock( const TITLE_BLOCK& aTitleBlock ) override;
 
-    virtual void UpdateStatusBar();
+    virtual void UpdateStatusBar() override;
 
     /**
      * Function SelectComponentFromLib
diff --git a/eeschema/sch_bitmap.h b/eeschema/sch_bitmap.h
index c96c69d..05b1a8a 100644
--- a/eeschema/sch_bitmap.h
+++ b/eeschema/sch_bitmap.h
@@ -78,7 +78,7 @@ public:
     }
 
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_BITMAP" );
     }
@@ -90,12 +90,12 @@ public:
      */
     wxSize GetSize() const;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual void SwapData( SCH_ITEM* aItem );
+    virtual void SwapData( SCH_ITEM* aItem ) override;
 
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
-               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
+               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) override;
 
     /**
      * Function ReadImageFile
@@ -106,42 +106,42 @@ public:
      */
     bool ReadImageFile( const wxString& aFullFilename );
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Pos += aMoveVector;
     }
 
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual bool IsSelectStateChanged( const wxRect& aRect );
+    virtual bool IsSelectStateChanged( const wxRect& aRect ) override;
 
-    virtual wxString GetSelectMenuText() const { return wxString( _( "Image" ) ); }
+    virtual wxString GetSelectMenuText() const override { return wxString( _( "Image" ) ); }
 
-    virtual BITMAP_DEF GetMenuImage() const { return image_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return image_xpm; }
 
-    virtual wxPoint GetPosition() const { return m_Pos; }
+    virtual wxPoint GetPosition() const override { return m_Pos; }
 
-    virtual void SetPosition( const wxPoint& aPosition ) { m_Pos = aPosition; }
+    virtual void SetPosition( const wxPoint& aPosition ) override { m_Pos = aPosition; }
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const override;
 
-    virtual void Plot( PLOTTER* aPlotter );
+    virtual void Plot( PLOTTER* aPlotter ) override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;     // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 };
 
diff --git a/eeschema/sch_bus_entry.h b/eeschema/sch_bus_entry.h
index ac6ca36..4409687 100644
--- a/eeschema/sch_bus_entry.h
+++ b/eeschema/sch_bus_entry.h
@@ -57,7 +57,7 @@ public:
      *  and false for items moved with no reference to anchor
      * @return false for a bus entry
      */
-    virtual bool IsMovableFromAnchorPoint() { return false; }
+    virtual bool IsMovableFromAnchorPoint() override { return false; }
 
     wxPoint m_End() const;
 
@@ -77,49 +77,49 @@ public:
 
     void SetSize( const wxSize& aSize ) { m_size = aSize; }
 
-    virtual void SwapData( SCH_ITEM* aItem );
+    virtual void SwapData( SCH_ITEM* aItem ) override;
 
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
-               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
+               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) override;
 
     static bool Load( LINE_READER& aLine, wxString& aErrorMsg, SCH_ITEM **out );
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_pos += aMoveVector;
     }
 
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual void GetEndPoints( std::vector <DANGLING_END_ITEM>& aItemList );
+    virtual void GetEndPoints( std::vector <DANGLING_END_ITEM>& aItemList ) override;
 
-    virtual bool IsSelectStateChanged( const wxRect& aRect );
+    virtual bool IsSelectStateChanged( const wxRect& aRect ) override;
 
-    virtual bool IsConnectable() const { return true; }
+    virtual bool IsConnectable() const override { return true; }
 
-    virtual void GetConnectionPoints( std::vector< wxPoint >& aPoints ) const;
+    virtual void GetConnectionPoints( std::vector< wxPoint >& aPoints ) const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_entry_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_entry_xpm; }
 
-    virtual wxPoint GetPosition() const { return m_pos; }
+    virtual wxPoint GetPosition() const override { return m_pos; }
 
-    virtual void SetPosition( const wxPoint& aPosition ) { m_pos = aPosition; }
+    virtual void SetPosition( const wxPoint& aPosition ) override { m_pos = aPosition; }
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const override;
 
-    virtual void Plot( PLOTTER* aPlotter );
+    virtual void Plot( PLOTTER* aPlotter ) override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 };
 
@@ -135,18 +135,18 @@ public:
 
     ~SCH_BUS_WIRE_ENTRY() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_BUS_WIRE_ENTRY" );
     }
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual int GetPenSize() const;
+    virtual int GetPenSize() const override;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 };
 
 /**
@@ -161,18 +161,18 @@ public:
 
     ~SCH_BUS_BUS_ENTRY() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_BUS_BUS_ENTRY" );
     }
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual int GetPenSize() const;
+    virtual int GetPenSize() const override;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 };
 
 #endif    // _SCH_BUS_ENTRY_H_
diff --git a/eeschema/sch_collectors.h b/eeschema/sch_collectors.h
index 57d50e5..3174282 100644
--- a/eeschema/sch_collectors.h
+++ b/eeschema/sch_collectors.h
@@ -135,7 +135,7 @@ public:
         return NULL;
     }
 
-    virtual SEARCH_RESULT Inspect( EDA_ITEM* aItem, const void* aTestData = NULL );
+    virtual SEARCH_RESULT Inspect( EDA_ITEM* aItem, const void* aTestData = NULL ) override;
 
     /**
      * Function Collect
@@ -336,7 +336,7 @@ public:
      */
     bool ReplaceItem( SCH_SHEET_PATH* aSheetPath = NULL );
 
-    virtual SEARCH_RESULT Inspect( EDA_ITEM* aItem, const void* aTestData = NULL );
+    virtual SEARCH_RESULT Inspect( EDA_ITEM* aItem, const void* aTestData = NULL ) override;
 
     /**
      * Function Collect
@@ -373,7 +373,7 @@ public:
      * @return SEARCH_RESULT - SEARCH_QUIT if the Iterator is to stop the scan,
      *   else SCAN_CONTINUE;
      */
-    virtual SEARCH_RESULT Inspect( EDA_ITEM* testItem, const void* testData );
+    virtual SEARCH_RESULT Inspect( EDA_ITEM* testItem, const void* testData ) override;
 
     /**
      * Function Collect
diff --git a/eeschema/sch_component.h b/eeschema/sch_component.h
index 3897d42..ab9b470 100644
--- a/eeschema/sch_component.h
+++ b/eeschema/sch_component.h
@@ -130,7 +130,7 @@ public:
 
     ~SCH_COMPONENT() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_COMPONENT" );
     }
@@ -143,7 +143,7 @@ public:
      * items which can be large (hierarchical sheets, compoments)
      * @return false for a componant
      */
-    virtual bool IsMovableFromAnchorPoint() { return false; }
+    virtual bool IsMovableFromAnchorPoint() override { return false; }
 
     void SetPartName( const wxString& aName, PART_LIBS* aLibs=NULL );
     const wxString& GetPartName() const        { return m_part_name; }
@@ -195,9 +195,9 @@ public:
      */
     int GetUnitCount() const;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
     /**
      * Function SetOrientation
@@ -232,7 +232,7 @@ public:
      */
     wxPoint GetScreenCoord( const wxPoint& aPoint );
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
     /**
      * Function ClearAnnotation
@@ -250,7 +250,7 @@ public:
      */
     void SetTimeStamp( time_t aNewTimeStamp );
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     //-----<Fields>-----------------------------------------------------------
 
@@ -303,7 +303,7 @@ public:
      * Virtual function, from the base class SCH_ITEM::Draw
      */
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
-               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR )
+               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) override
     {
         Draw( aPanel, aDC, aOffset, aDrawMode, aColor, true );
     }
@@ -324,7 +324,7 @@ public:
                GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor,
                bool aDrawPinText );
 
-    virtual void SwapData( SCH_ITEM* aItem );
+    virtual void SwapData( SCH_ITEM* aItem ) override;
 
     // returns a unique ID, in the form of a path.
     wxString GetPath( const SCH_SHEET_PATH* sheet ) const;
@@ -375,7 +375,7 @@ public:
 
     // Geometric transforms (used in block operations):
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         if( aMoveVector == wxPoint( 0, 0 ) )
             return;
@@ -388,21 +388,21 @@ public:
         SetModified();
     }
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation );
+    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation ) override;
 
-    virtual void GetEndPoints( std::vector<DANGLING_END_ITEM>& aItemList );
+    virtual void GetEndPoints( std::vector<DANGLING_END_ITEM>& aItemList ) override;
 
     wxPoint GetPinPhysicalPosition( LIB_PIN* Pin );
 
-    virtual bool IsSelectStateChanged( const wxRect& aRect );
+    virtual bool IsSelectStateChanged( const wxRect& aRect ) override;
 
-    virtual bool IsConnectable() const { return true; }
+    virtual bool IsConnectable() const override { return true; }
 
     /**
      * @return true if the component is in netlist
@@ -411,10 +411,10 @@ public:
      */
     bool IsInNetlist() const;
 
-    virtual void GetConnectionPoints( std::vector<wxPoint>& aPoints ) const;
+    virtual void GetConnectionPoints( std::vector<wxPoint>& aPoints ) const override;
 
     virtual SEARCH_RESULT Visit( INSPECTOR* inspector, const void* testData,
-                                 const KICAD_T scanTypes[] );
+                                 const KICAD_T scanTypes[] ) override;
 
     /**
      * Function GetDrawItem().
@@ -426,40 +426,40 @@ public:
      */
     LIB_ITEM* GetDrawItem( const wxPoint& aPosition, KICAD_T aType = TYPE_NOT_INIT );
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_component_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_component_xpm; }
 
     virtual void GetNetListItem( NETLIST_OBJECT_LIST& aNetListItems,
-                         SCH_SHEET_PATH*      aSheetPath );
+                         SCH_SHEET_PATH*      aSheetPath ) override;
 
-    virtual bool operator <( const SCH_ITEM& aItem ) const;
+    virtual bool operator <( const SCH_ITEM& aItem ) const override;
 
     bool operator==( const SCH_COMPONENT& aComponent) const;
     bool operator!=( const SCH_COMPONENT& aComponent) const;
 
     SCH_ITEM& operator=( const SCH_ITEM& aItem );
 
-    virtual bool IsReplaceable() const { return true; }
+    virtual bool IsReplaceable() const override { return true; }
 
-    virtual wxPoint GetPosition() const { return m_Pos; }
+    virtual wxPoint GetPosition() const override { return m_Pos; }
 
-    virtual void SetPosition( const wxPoint& aPosition ) { Move( aPosition - m_Pos ); }
+    virtual void SetPosition( const wxPoint& aPosition ) override { Move( aPosition - m_Pos ); }
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const override;
 
-    virtual void Plot( PLOTTER* aPlotter );
+    virtual void Plot( PLOTTER* aPlotter ) override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;     // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 
 private:
-    virtual bool doIsConnected( const wxPoint& aPosition ) const;
+    virtual bool doIsConnected( const wxPoint& aPosition ) const override;
 };
 
 
diff --git a/eeschema/sch_field.h b/eeschema/sch_field.h
index 0cb9123..24ae80b 100644
--- a/eeschema/sch_field.h
+++ b/eeschema/sch_field.h
@@ -67,7 +67,7 @@ public:
 
     ~SCH_FIELD();
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_FIELD" );
     }
@@ -100,7 +100,7 @@ public:
 
     void Place( SCH_EDIT_FRAME* frame, wxDC* DC );
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     /**
      * Function IsVoid
@@ -113,7 +113,7 @@ public:
         return len == 0 || ( len == 1 && m_Text[0] == wxChar( '~' ) );
     }
 
-    virtual void SwapData( SCH_ITEM* aItem );
+    virtual void SwapData( SCH_ITEM* aItem ) override;
 
     /**
      * Function ImportValues
@@ -123,7 +123,7 @@ public:
      */
     void ImportValues( const LIB_FIELD& aSource );
 
-    virtual int GetPenSize() const;
+    virtual int GetPenSize() const override;
 
     /**
      * Function IsVisible
@@ -135,19 +135,19 @@ public:
     }
 
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
-               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
+               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) override;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
     // Geometric transforms (used in block operations):
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Pos += aMoveVector;
     }
 
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
     /**
      * @copydoc SCH_ITEM::MirrorX()
@@ -156,7 +156,7 @@ public:
      * when the parent component is mirrored.  This function is only needed by the
      * pure function of the master class.
      */
-    virtual void MirrorX( int aXaxis_position )
+    virtual void MirrorX( int aXaxis_position ) override
     {
     }
 
@@ -167,34 +167,34 @@ public:
      * when the parent component is mirrored.  This function is only needed by the
      * pure function of the master class.
      */
-    virtual void MirrorY( int aYaxis_position )
+    virtual void MirrorY( int aYaxis_position ) override
     {
     }
 
-    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation );
+    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation ) override;
 
-    virtual bool Replace( wxFindReplaceData& aSearchData, void* aAuxData = NULL );
+    virtual bool Replace( wxFindReplaceData& aSearchData, void* aAuxData = NULL ) override;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const;
+    virtual BITMAP_DEF GetMenuImage() const override;
 
-    virtual bool IsReplaceable() const { return true; }
+    virtual bool IsReplaceable() const override { return true; }
 
-    virtual wxPoint GetPosition() const;
+    virtual wxPoint GetPosition() const override;
 
-    virtual void SetPosition( const wxPoint& aPosition );
+    virtual void SetPosition( const wxPoint& aPosition ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const override;
 
-    virtual void Plot( PLOTTER* aPlotter );
+    virtual void Plot( PLOTTER* aPlotter ) override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 };
 
diff --git a/eeschema/sch_item_struct.h b/eeschema/sch_item_struct.h
index 329ab85..800a3e3 100644
--- a/eeschema/sch_item_struct.h
+++ b/eeschema/sch_item_struct.h
@@ -127,7 +127,7 @@ public:
 
     ~SCH_ITEM();
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_ITEM" );
     }
@@ -313,7 +313,7 @@ public:
     bool IsConnected( const wxPoint& aPoint ) const;
 
     /** @copydoc EDA_ITEM::HitTest(const wxPoint&) */
-    virtual bool HitTest( const wxPoint& aPosition ) const
+    virtual bool HitTest( const wxPoint& aPosition ) const override
     {
         return HitTest( aPosition, 0 );
     }
diff --git a/eeschema/sch_junction.h b/eeschema/sch_junction.h
index 9c2cf13..0158c45 100644
--- a/eeschema/sch_junction.h
+++ b/eeschema/sch_junction.h
@@ -45,7 +45,7 @@ public:
 
     ~SCH_JUNCTION() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_JUNCTION" );
     }
@@ -53,60 +53,60 @@ public:
     static int GetSymbolSize() { return m_symbolSize; }
     static void SetSymbolSize( int aSize ) { m_symbolSize = aSize; }
 
-    virtual void SwapData( SCH_ITEM* aItem );
+    virtual void SwapData( SCH_ITEM* aItem ) override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
-               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
+               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) override;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_pos += aMoveVector;
     }
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual void GetEndPoints( std::vector <DANGLING_END_ITEM>& aItemList );
+    virtual void GetEndPoints( std::vector <DANGLING_END_ITEM>& aItemList ) override;
 
-    virtual bool IsSelectStateChanged( const wxRect& aRect );
+    virtual bool IsSelectStateChanged( const wxRect& aRect ) override;
 
-    virtual bool IsConnectable() const { return true; }
+    virtual bool IsConnectable() const override { return true; }
 
-    virtual void GetConnectionPoints( std::vector< wxPoint >& aPoints ) const;
+    virtual void GetConnectionPoints( std::vector< wxPoint >& aPoints ) const override;
 
-    virtual wxString GetSelectMenuText() const { return wxString( _( "Junction" ) ); }
+    virtual wxString GetSelectMenuText() const override { return wxString( _( "Junction" ) ); }
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_junction_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_junction_xpm; }
 
-    virtual void GetNetListItem( NETLIST_OBJECT_LIST& aNetListItems, SCH_SHEET_PATH* aSheetPath );
+    virtual void GetNetListItem( NETLIST_OBJECT_LIST& aNetListItems, SCH_SHEET_PATH* aSheetPath ) override;
 
-    virtual wxPoint GetPosition() const { return m_pos; }
+    virtual wxPoint GetPosition() const override { return m_pos; }
 
-    virtual void SetPosition( const wxPoint& aPosition ) { m_pos = aPosition; }
+    virtual void SetPosition( const wxPoint& aPosition ) override { m_pos = aPosition; }
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
     virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false,
-                          int aAccuracy = 0 ) const;
-    virtual void Plot( PLOTTER* aPlotter );
+                          int aAccuracy = 0 ) const override;
+    virtual void Plot( PLOTTER* aPlotter ) override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;     // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 
 private:
-    virtual bool doIsConnected( const wxPoint& aPosition ) const;
+    virtual bool doIsConnected( const wxPoint& aPosition ) const override;
 };
 
 
diff --git a/eeschema/sch_line.h b/eeschema/sch_line.h
index 09fb244..0b4ad4b 100644
--- a/eeschema/sch_line.h
+++ b/eeschema/sch_line.h
@@ -56,7 +56,7 @@ public:
     SCH_LINE* Next() const { return (SCH_LINE*) Pnext; }
     SCH_LINE* Back() const { return (SCH_LINE*) Pback; }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_LINE" );
     }
@@ -76,7 +76,7 @@ public:
 
     void SetEndPoint( const wxPoint& aPosition ) { m_end = aPosition; }
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     /**
      * Function GetLength
@@ -85,21 +85,21 @@ public:
     double GetLength() const;
 
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
-               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
+               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) override;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
-    virtual int GetPenSize() const;
+    virtual int GetPenSize() const override;
 
-    virtual void Move( const wxPoint& aMoveVector );
+    virtual void Move( const wxPoint& aMoveVector ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
     /**
      * Check line against \a aLine to see if it overlaps and merge if it does.
@@ -113,44 +113,44 @@ public:
      */
     bool MergeOverlap( SCH_LINE* aLine );
 
-    virtual void GetEndPoints( std::vector<DANGLING_END_ITEM>& aItemList );
+    virtual void GetEndPoints( std::vector<DANGLING_END_ITEM>& aItemList ) override;
 
-    virtual bool IsDanglingStateChanged( std::vector< DANGLING_END_ITEM >& aItemList );
+    virtual bool IsDanglingStateChanged( std::vector< DANGLING_END_ITEM >& aItemList ) override;
 
-    virtual bool IsDangling() const { return m_startIsDangling || m_endIsDangling; }
+    virtual bool IsDangling() const override { return m_startIsDangling || m_endIsDangling; }
 
-    virtual bool IsSelectStateChanged( const wxRect& aRect );
+    virtual bool IsSelectStateChanged( const wxRect& aRect ) override;
 
-    virtual bool IsConnectable() const;
+    virtual bool IsConnectable() const override;
 
-    virtual void GetConnectionPoints(std::vector< wxPoint >& aPoints ) const;
+    virtual void GetConnectionPoints(std::vector< wxPoint >& aPoints ) const override;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const;
+    virtual BITMAP_DEF GetMenuImage() const override;
 
-    virtual void GetNetListItem( NETLIST_OBJECT_LIST& aNetListItems, SCH_SHEET_PATH* aSheetPath );
+    virtual void GetNetListItem( NETLIST_OBJECT_LIST& aNetListItems, SCH_SHEET_PATH* aSheetPath ) override;
 
-    virtual bool operator <( const SCH_ITEM& aItem ) const;
+    virtual bool operator <( const SCH_ITEM& aItem ) const override;
 
-    virtual wxPoint GetPosition() const { return m_start; }
+    virtual wxPoint GetPosition() const override { return m_start; }
 
-    virtual void SetPosition( const wxPoint& aPosition );
+    virtual void SetPosition( const wxPoint& aPosition ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const override;
 
-    virtual void Plot( PLOTTER* aPlotter );
+    virtual void Plot( PLOTTER* aPlotter ) override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const; // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 
 private:
-    virtual bool doIsConnected( const wxPoint& aPosition ) const;
+    virtual bool doIsConnected( const wxPoint& aPosition ) const override;
 };
 
 
diff --git a/eeschema/sch_marker.h b/eeschema/sch_marker.h
index 82a8704..37d65c8 100644
--- a/eeschema/sch_marker.h
+++ b/eeschema/sch_marker.h
@@ -62,31 +62,31 @@ public:
 
     ~SCH_MARKER();
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_MARKER" );
     }
 
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
-               GR_DRAWMODE aDraw_mode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
+               GR_DRAWMODE aDraw_mode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) override;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual EDA_RECT const GetBoundingBox() const;
+    virtual EDA_RECT const GetBoundingBox() const override;
 
     // Geometric transforms (used in block operations):
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Pos += aMoveVector;
     }
 
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
     /**
      * Function Matches, virtual from the base class EDA_ITEM
@@ -98,26 +98,26 @@ public:
      * @param aFindLocation - a wxPoint where to put the location of matched item. can be NULL.
      * @return True if the DRC main or auxiliary text matches the search criteria.
      */
-    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation );
+    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation ) override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual bool IsSelectStateChanged( const wxRect& aRect );
+    virtual bool IsSelectStateChanged( const wxRect& aRect ) override;
 
-    virtual wxString GetSelectMenuText() const { return wxString( _( "ERC Marker" ) ); }
+    virtual wxString GetSelectMenuText() const override { return wxString( _( "ERC Marker" ) ); }
 
-    virtual BITMAP_DEF GetMenuImage() const { return  erc_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  erc_xpm; }
 
-    virtual wxPoint GetPosition() const { return m_Pos; }
+    virtual wxPoint GetPosition() const override { return m_Pos; }
 
-    virtual void SetPosition( const wxPoint& aPosition ) { m_Pos = aPosition; }
+    virtual void SetPosition( const wxPoint& aPosition ) override { m_Pos = aPosition; }
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;     // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 };
 
diff --git a/eeschema/sch_no_connect.h b/eeschema/sch_no_connect.h
index cc97fbc..7fbf778 100644
--- a/eeschema/sch_no_connect.h
+++ b/eeschema/sch_no_connect.h
@@ -46,67 +46,67 @@ public:
 
     ~SCH_NO_CONNECT() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_NO_CONNECT" );
     }
 
-    virtual int GetPenSize() const;
+    virtual int GetPenSize() const override;
 
-    virtual void SwapData( SCH_ITEM* aItem );
+    virtual void SwapData( SCH_ITEM* aItem ) override;
 
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
-               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
+               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) override;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     // Geometric transforms (used in block operations)l:
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_pos += aMoveVector;
     }
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual bool IsSelectStateChanged( const wxRect& aRect );
+    virtual bool IsSelectStateChanged( const wxRect& aRect ) override;
 
-    virtual bool IsConnectable() const { return true; }
+    virtual bool IsConnectable() const override { return true; }
 
-    virtual void GetConnectionPoints( std::vector< wxPoint >& aPoints ) const;
+    virtual void GetConnectionPoints( std::vector< wxPoint >& aPoints ) const override;
 
-    virtual wxString GetSelectMenuText() const { return wxString( _( "No Connect" ) ); }
+    virtual wxString GetSelectMenuText() const override { return wxString( _( "No Connect" ) ); }
 
-    virtual BITMAP_DEF GetMenuImage() const { return noconn_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return noconn_xpm; }
 
-    virtual void GetNetListItem( NETLIST_OBJECT_LIST& aNetListItems, SCH_SHEET_PATH* aSheetPath );
+    virtual void GetNetListItem( NETLIST_OBJECT_LIST& aNetListItems, SCH_SHEET_PATH* aSheetPath ) override;
 
-    virtual wxPoint GetPosition() const { return m_pos; }
+    virtual wxPoint GetPosition() const override { return m_pos; }
 
-    virtual void SetPosition( const wxPoint& aPosition ) { m_pos = aPosition; }
+    virtual void SetPosition( const wxPoint& aPosition ) override { m_pos = aPosition; }
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const override;
 
-    virtual void Plot( PLOTTER* aPlotter );
+    virtual void Plot( PLOTTER* aPlotter ) override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
 private:
-    virtual bool doIsConnected( const wxPoint& aPosition ) const;
+    virtual bool doIsConnected( const wxPoint& aPosition ) const override;
 };
 
 
diff --git a/eeschema/sch_sheet.h b/eeschema/sch_sheet.h
index 6c90d70..15f77ae 100644
--- a/eeschema/sch_sheet.h
+++ b/eeschema/sch_sheet.h
@@ -88,7 +88,7 @@ public:
 
     ~SCH_SHEET_PIN() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_SHEET_PIN" );
     }
@@ -101,10 +101,10 @@ public:
      *  and false for items moved with no reference to anchor
      * @return false for a hierarchical sheet pin
      */
-    virtual bool IsMovableFromAnchorPoint() { return false; }
+    virtual bool IsMovableFromAnchorPoint() override { return false; }
 
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
-               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
+               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) override;
 
     /**
      * Function CreateGraphicShape (virtual)
@@ -112,11 +112,11 @@ public:
      * @param aPoints = a buffer to fill with polygon corners coordinates
      * @param aPos = Position of the shape
      */
-    virtual void CreateGraphicShape( std::vector <wxPoint>& aPoints, const wxPoint& aPos );
+    virtual void CreateGraphicShape( std::vector <wxPoint>& aPoints, const wxPoint& aPos ) override;
 
-    virtual void SwapData( SCH_ITEM* aItem );
+    virtual void SwapData( SCH_ITEM* aItem ) override;
 
-    virtual int GetPenSize() const;
+    virtual int GetPenSize() const override;
 
     /**
      * Get the sheet label number.
@@ -151,49 +151,49 @@ public:
      */
     SCH_SHEET* GetParent() const { return (SCH_SHEET*) m_Parent; }
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;     // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 
     // Geometric transforms (used in block operations):
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Pos += aMoveVector;
     }
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation );
+    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation ) override;
 
-    virtual bool Replace( wxFindReplaceData& aSearchData, void* aAuxData = NULL )
+    virtual bool Replace( wxFindReplaceData& aSearchData, void* aAuxData = NULL ) override
     {
         return EDA_ITEM::Replace( aSearchData, m_Text );
     }
 
-    virtual bool IsReplaceable() const { return true; }
+    virtual bool IsReplaceable() const override { return true; }
 
-    virtual void GetEndPoints( std::vector< DANGLING_END_ITEM >& aItemList );
+    virtual void GetEndPoints( std::vector< DANGLING_END_ITEM >& aItemList ) override;
 
-    virtual bool IsConnectable() const { return true; }
+    virtual bool IsConnectable() const override { return true; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_hierar_pin_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_hierar_pin_xpm; }
 
-    virtual void SetPosition( const wxPoint& aPosition ) { ConstrainOnEdge( aPosition ); }
+    virtual void SetPosition( const wxPoint& aPosition ) override { ConstrainOnEdge( aPosition ); }
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 };
 
 
@@ -247,7 +247,7 @@ public:
 
     ~SCH_SHEET();
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_SHEET" );
     }
@@ -260,7 +260,7 @@ public:
      * items which can be large (hierarchical sheets, compoments)
      * @return false for a hierarchical sheet
      */
-    virtual bool IsMovableFromAnchorPoint() { return false; }
+    virtual bool IsMovableFromAnchorPoint() override { return false; }
 
     wxString GetName() const { return m_name; }
 
@@ -301,11 +301,11 @@ public:
      */
     int GetScreenCount() const;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
     /* there is no member for orientation in sch_sheet, to preserve file
      * format, we detect orientation based on pin edges
@@ -404,12 +404,12 @@ public:
      */
     int GetMinHeight() const;
 
-    virtual int GetPenSize() const;
+    virtual int GetPenSize() const override;
 
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
-               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR );
+               GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor = UNSPECIFIED_COLOR ) override;
 
-    virtual EDA_RECT const GetBoundingBox() const;
+    virtual EDA_RECT const GetBoundingBox() const override;
 
     /**
      * Function GetResizePos
@@ -419,7 +419,7 @@ public:
      */
     wxPoint GetResizePosition() const;
 
-    virtual void SwapData( SCH_ITEM* aItem );
+    virtual void SwapData( SCH_ITEM* aItem ) override;
 
     /**
      * Function ComponentCount
@@ -493,7 +493,7 @@ public:
 
     // Geometric transforms (used in block operations):
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_pos += aMoveVector;
 
@@ -503,17 +503,17 @@ public:
         }
     }
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation );
+    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation ) override;
 
-    virtual bool Replace( wxFindReplaceData& aSearchData, void* aAuxData = NULL );
+    virtual bool Replace( wxFindReplaceData& aSearchData, void* aAuxData = NULL ) override;
 
-    virtual bool IsReplaceable() const { return true; }
+    virtual bool IsReplaceable() const override { return true; }
 
     /**
      * Resize this sheet to aSize and adjust all of the labels accordingly.
@@ -534,44 +534,44 @@ public:
      */
     wxPoint GetFileNamePosition();
 
-    virtual void GetEndPoints( std::vector <DANGLING_END_ITEM>& aItemList );
+    virtual void GetEndPoints( std::vector <DANGLING_END_ITEM>& aItemList ) override;
 
-    virtual bool IsDanglingStateChanged( std::vector< DANGLING_END_ITEM >& aItemList );
+    virtual bool IsDanglingStateChanged( std::vector< DANGLING_END_ITEM >& aItemList ) override;
 
-    virtual bool IsDangling() const;
+    virtual bool IsDangling() const override;
 
-    virtual bool IsSelectStateChanged( const wxRect& aRect );
+    virtual bool IsSelectStateChanged( const wxRect& aRect ) override;
 
-    virtual bool IsConnectable() const { return true; }
+    virtual bool IsConnectable() const override { return true; }
 
-    virtual void GetConnectionPoints( std::vector< wxPoint >& aPoints ) const;
+    virtual void GetConnectionPoints( std::vector< wxPoint >& aPoints ) const override;
 
     virtual SEARCH_RESULT Visit( INSPECTOR* inspector, const void* testData,
-                                 const KICAD_T scanTypes[] );
+                                 const KICAD_T scanTypes[] ) override;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return add_hierarchical_subsheet_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return add_hierarchical_subsheet_xpm; }
 
     virtual void GetNetListItem( NETLIST_OBJECT_LIST& aNetListItems,
-                         SCH_SHEET_PATH*      aSheetPath );
+                         SCH_SHEET_PATH*      aSheetPath ) override;
 
     SCH_ITEM& operator=( const SCH_ITEM& aSheet );
 
-    virtual wxPoint GetPosition() const { return m_pos; }
+    virtual wxPoint GetPosition() const override { return m_pos; }
 
-    virtual void SetPosition( const wxPoint& aPosition );
+    virtual void SetPosition( const wxPoint& aPosition ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false, int aAccuracy = 0 ) const override;
 
-    virtual void Plot( PLOTTER* aPlotter );
+    virtual void Plot( PLOTTER* aPlotter ) override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;     // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 
 protected:
diff --git a/eeschema/sch_text.h b/eeschema/sch_text.h
index d6f4235..676cdd4 100644
--- a/eeschema/sch_text.h
+++ b/eeschema/sch_text.h
@@ -91,7 +91,7 @@ public:
 
     ~SCH_TEXT() { }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_TEXT" );
     }
@@ -132,7 +132,7 @@ public:
     virtual wxPoint GetSchematicTextOffset() const;
 
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& offset,
-                       GR_DRAWMODE draw_mode, EDA_COLOR_T Color = UNSPECIFIED_COLOR );
+                       GR_DRAWMODE draw_mode, EDA_COLOR_T Color = UNSPECIFIED_COLOR ) override;
 
     /**
      * Function CreateGraphicShape
@@ -146,74 +146,74 @@ public:
         aPoints.clear();
     }
 
-    virtual void SwapData( SCH_ITEM* aItem );
+    virtual void SwapData( SCH_ITEM* aItem ) override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
-    virtual int GetPenSize() const;
+    virtual int GetPenSize() const override;
 
     // Geometric transforms (used in block operations):
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Pos += aMoveVector;
     }
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation );
+    virtual bool Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint* aFindLocation ) override;
 
-    virtual bool Replace( wxFindReplaceData& aSearchData, void* aAuxData = NULL )
+    virtual bool Replace( wxFindReplaceData& aSearchData, void* aAuxData = NULL ) override
     {
         return EDA_ITEM::Replace( aSearchData, m_Text );
     }
 
-    virtual bool IsReplaceable() const { return true; }
+    virtual bool IsReplaceable() const override { return true; }
 
-    virtual void GetEndPoints( std::vector< DANGLING_END_ITEM >& aItemList );
+    virtual void GetEndPoints( std::vector< DANGLING_END_ITEM >& aItemList ) override;
 
-    virtual bool IsDanglingStateChanged( std::vector< DANGLING_END_ITEM >& aItemList );
+    virtual bool IsDanglingStateChanged( std::vector< DANGLING_END_ITEM >& aItemList ) override;
 
-    virtual bool IsDangling() const { return m_isDangling; }
+    virtual bool IsDangling() const override { return m_isDangling; }
 
-    virtual bool IsSelectStateChanged( const wxRect& aRect );
+    virtual bool IsSelectStateChanged( const wxRect& aRect ) override;
 
-    virtual void GetConnectionPoints( std::vector< wxPoint >& aPoints ) const;
+    virtual void GetConnectionPoints( std::vector< wxPoint >& aPoints ) const override;
 
-    virtual bool CanIncrementLabel() const { return true; }
+    virtual bool CanIncrementLabel() const override { return true; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_text_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_text_xpm; }
 
     virtual void GetNetListItem( NETLIST_OBJECT_LIST& aNetListItems,
-                                 SCH_SHEET_PATH*      aSheetPath );
+                                 SCH_SHEET_PATH*      aSheetPath ) override;
 
-    virtual wxPoint GetPosition() const { return m_Pos; }
+    virtual wxPoint GetPosition() const override { return m_Pos; }
 
-    virtual void SetPosition( const wxPoint& aPosition ) { m_Pos = aPosition; }
+    virtual void SetPosition( const wxPoint& aPosition ) override { m_Pos = aPosition; }
 
-    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const;
+    virtual bool HitTest( const wxPoint& aPosition, int aAccuracy ) const override;
 
     virtual bool HitTest( const EDA_RECT& aRect, bool aContained = false,
-                          int aAccuracy = 0 ) const;
+                          int aAccuracy = 0 ) const override;
 
-    virtual void Plot( PLOTTER* aPlotter );
+    virtual void Plot( PLOTTER* aPlotter ) override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;     // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 };
 
@@ -228,39 +228,39 @@ public:
     ~SCH_LABEL() { }
 
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& offset,
-               GR_DRAWMODE draw_mode, EDA_COLOR_T Color = UNSPECIFIED_COLOR );
+               GR_DRAWMODE draw_mode, EDA_COLOR_T Color = UNSPECIFIED_COLOR ) override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_LABEL" );
     }
 
-    virtual void SetOrientation( int aSchematicOrientation );
+    virtual void SetOrientation( int aSchematicOrientation ) override;
 
-    virtual wxPoint GetSchematicTextOffset() const;
+    virtual wxPoint GetSchematicTextOffset() const override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
-    virtual bool IsConnectable() const { return true; }
+    virtual bool IsConnectable() const override { return true; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_line_label_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_line_label_xpm; }
 
-    virtual bool IsReplaceable() const { return true; }
+    virtual bool IsReplaceable() const override { return true; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
-    virtual bool doIsConnected( const wxPoint& aPosition ) const { return m_Pos == aPosition; }
+    virtual bool doIsConnected( const wxPoint& aPosition ) const override { return m_Pos == aPosition; }
 };
 
 
@@ -274,41 +274,41 @@ public:
     ~SCH_GLOBALLABEL() { }
 
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& offset,
-               GR_DRAWMODE draw_mode, EDA_COLOR_T Color = UNSPECIFIED_COLOR );
+               GR_DRAWMODE draw_mode, EDA_COLOR_T Color = UNSPECIFIED_COLOR ) override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_GLOBALLABEL" );
     }
 
-    virtual void SetOrientation( int aSchematicOrientation );
+    virtual void SetOrientation( int aSchematicOrientation ) override;
 
-    virtual wxPoint GetSchematicTextOffset() const;
+    virtual wxPoint GetSchematicTextOffset() const override;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual void CreateGraphicShape( std::vector <wxPoint>& aPoints, const wxPoint& aPos );
+    virtual void CreateGraphicShape( std::vector <wxPoint>& aPoints, const wxPoint& aPos ) override;
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual bool IsConnectable() const { return true; }
+    virtual bool IsConnectable() const override { return true; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_glabel_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_glabel_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
-    virtual bool doIsConnected( const wxPoint& aPosition ) const { return m_Pos == aPosition; }
+    virtual bool doIsConnected( const wxPoint& aPosition ) const override { return m_Pos == aPosition; }
 };
 
 
@@ -324,41 +324,41 @@ public:
     ~SCH_HIERLABEL() { }
 
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC, const wxPoint& offset,
-               GR_DRAWMODE draw_mode, EDA_COLOR_T Color = UNSPECIFIED_COLOR );
+               GR_DRAWMODE draw_mode, EDA_COLOR_T Color = UNSPECIFIED_COLOR ) override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_HIERLABEL" );
     }
 
-    virtual void SetOrientation( int aSchematicOrientation );
+    virtual void SetOrientation( int aSchematicOrientation ) override;
 
-    virtual wxPoint GetSchematicTextOffset() const;
+    virtual wxPoint GetSchematicTextOffset() const override;
 
-    virtual void CreateGraphicShape( std::vector <wxPoint>& aPoints, const wxPoint& Pos );
+    virtual void CreateGraphicShape( std::vector <wxPoint>& aPoints, const wxPoint& Pos ) override;
 
-    virtual bool Save( FILE* aFile ) const;
+    virtual bool Save( FILE* aFile ) const override;
 
-    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg );
+    virtual bool Load( LINE_READER& aLine, wxString& aErrorMsg ) override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual void MirrorY( int aYaxis_position );
+    virtual void MirrorY( int aYaxis_position ) override;
 
-    virtual void MirrorX( int aXaxis_position );
+    virtual void MirrorX( int aXaxis_position ) override;
 
-    virtual void Rotate( wxPoint aPosition );
+    virtual void Rotate( wxPoint aPosition ) override;
 
-    virtual bool IsConnectable() const { return true; }
+    virtual bool IsConnectable() const override { return true; }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_hierarchical_label_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_hierarchical_label_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 private:
-    virtual bool doIsConnected( const wxPoint& aPosition ) const { return m_Pos == aPosition; }
+    virtual bool doIsConnected( const wxPoint& aPosition ) const override { return m_Pos == aPosition; }
 };
 
 #endif /* CLASS_TEXT_LABEL_H */
diff --git a/eeschema/schframe.h b/eeschema/schframe.h
index f7ce50a..912e358 100644
--- a/eeschema/schframe.h
+++ b/eeschema/schframe.h
@@ -187,13 +187,13 @@ protected:
      *
      * @return true if the auto save was successful otherwise false.
      */
-    virtual bool doAutoSave();
+    virtual bool doAutoSave() override;
 
     /**
      * Function autoSaveRequired
      * returns true if the schematic has been modified.
      */
-    virtual bool isAutoSaveRequired() const;
+    virtual bool isAutoSaveRequired() const override;
 
     /**
      * Function addCurrentItemToList
@@ -213,7 +213,7 @@ public:
     SCH_EDIT_FRAME( KIWAY* aKiway, wxWindow* aParent );
     ~SCH_EDIT_FRAME();
 
-    virtual SCH_SCREEN* GetScreen() const;
+    virtual SCH_SCREEN* GetScreen() const override;
 
     void OnCloseWindow( wxCloseEvent& Event );
 
@@ -252,7 +252,7 @@ public:
     void Process_Config( wxCommandEvent& event );
     void OnSelectTool( wxCommandEvent& aEvent );
 
-    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 );
+    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 ) override;
 
     /**
      * Function GetProjectFileParametersList
@@ -270,7 +270,7 @@ public:
      * saves changes to the project settings to the project (.pro) file.
      * @param aAskForSave = true to open a dialog before saving the settings
      */
-    virtual void SaveProjectSettings( bool aAskForSave );
+    virtual void SaveProjectSettings( bool aAskForSave ) override;
 
     /**
      * Function LoadProjectFile
@@ -347,17 +347,17 @@ public:
      */
     PARAM_CFG_ARRAY& GetConfigurationSettings();
 
-    virtual void LoadSettings( wxConfigBase* aCfg );
-    virtual void SaveSettings( wxConfigBase* aCfg );
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
-    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg );
+    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg ) override;
 
     void CreateScreens();
-    virtual void ReCreateHToolbar();
-    virtual void ReCreateVToolbar();
+    virtual void ReCreateHToolbar() override;
+    virtual void ReCreateVToolbar() override;
     void ReCreateOptToolbar();
-    virtual void ReCreateMenuBar();
-    virtual bool OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, EDA_ITEM* aItem = NULL );
+    virtual void ReCreateMenuBar() override;
+    virtual bool OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, EDA_ITEM* aItem = NULL ) override;
 
     /**
      * Function OnModify
@@ -367,7 +367,7 @@ public:
      */
     void OnModify();
 
-    virtual wxString GetScreenDesc() const;
+    virtual wxString GetScreenDesc() const override;
 
     void InstallConfigFrame( wxCommandEvent& event );
 
@@ -377,15 +377,15 @@ public:
      * this is a virtual function called by EDA_DRAW_FRAME::OnSockRequest().
      * @param cmdline = received command from socket
      */
-    virtual void ExecuteRemoteCommand( const char* cmdline );
+    virtual void ExecuteRemoteCommand( const char* cmdline ) override;
 
-    virtual void KiwayMailIn( KIWAY_EXPRESS& aEvent );
+    virtual void KiwayMailIn( KIWAY_EXPRESS& aEvent ) override;
 
-    virtual void OnLeftClick( wxDC* aDC, const wxPoint& aPosition );
-    virtual void OnLeftDClick( wxDC* aDC, const wxPoint& aPosition );
-    virtual bool OnRightClick( const wxPoint& aPosition, wxMenu* PopMenu );
+    virtual void OnLeftClick( wxDC* aDC, const wxPoint& aPosition ) override;
+    virtual void OnLeftDClick( wxDC* aDC, const wxPoint& aPosition ) override;
+    virtual bool OnRightClick( const wxPoint& aPosition, wxMenu* PopMenu ) override;
     void OnSelectOptionToolbar( wxCommandEvent& event );
-    virtual double BestZoom();
+    virtual double BestZoom() override;
 
     /**
      * Function LocateAndShowItem
@@ -649,7 +649,7 @@ public:
      */
     void OnSaveProject( wxCommandEvent& aEvent );
 
-    virtual bool OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl = 0 );
+    virtual bool OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl = 0 ) override;
 
     /**
      * Function AppendOneEEProject
@@ -1147,7 +1147,7 @@ public:
      * Function InitBlockPasteInfos
      * initializes the parameters used by the block paste command.
      */
-    virtual void InitBlockPasteInfos();
+    virtual void InitBlockPasteInfos() override;
 
     /**
      * Function BlockCommand
@@ -1157,7 +1157,7 @@ public:
      * @param aKey = the key modifiers (Alt, Shift ...)
      * @return the block command id (BLOCK_MOVE, BLOCK_COPY...)
      */
-    virtual int BlockCommand( int aKey );
+    virtual int BlockCommand( int aKey ) override;
 
     /**
      * Function HandleBlockPlace
@@ -1166,7 +1166,7 @@ public:
      * (bloc move, drag, copy .. )
      * Parameters must be initialized in GetScreen()->m_BlockLocate
      */
-    virtual void HandleBlockPlace( wxDC* DC );
+    virtual void HandleBlockPlace( wxDC* DC ) override;
 
     /**
      * Function HandleBlockEnd
@@ -1180,7 +1180,7 @@ public:
      * @return false if no item selected, or command finished,
      * true if some items found and HandleBlockPlace must be called later
      */
-    virtual bool HandleBlockEnd( wxDC* aDC );
+    virtual bool HandleBlockEnd( wxDC* aDC ) override;
 
     /**
      * Function RepeatDrawItem
@@ -1255,7 +1255,7 @@ public:
      * @param aData = a pointer on an auxiliary data (not always used, NULL if not used)
      */
     virtual void PrintPage( wxDC* aDC, LSET aPrintMask,
-                            bool aPrintMirrorMode, void* aData = NULL );
+                            bool aPrintMirrorMode, void* aData = NULL ) override;
 
     void SetSimulatorCommand( const wxString& aCommand ) { m_simulatorCommand = aCommand; }
 
diff --git a/eeschema/viewlib_frame.h b/eeschema/viewlib_frame.h
index 25ca832..9bc9247 100644
--- a/eeschema/viewlib_frame.h
+++ b/eeschema/viewlib_frame.h
@@ -67,7 +67,7 @@ public:
      */
     static const wxChar* GetLibViewerFrameName();
 
-    virtual void OnSize( wxSizeEvent& event );
+    virtual void OnSize( wxSizeEvent& event ) override;
 
     /**
      * Function ReCreateListLib
@@ -80,20 +80,20 @@ public:
     void ReCreateListCmp();
     void Process_Special_Functions( wxCommandEvent& event );
     void DisplayLibInfos();
-    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg );
+    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg ) override;
     void OnCloseWindow( wxCloseEvent& Event );
     void CloseLibraryViewer( wxCommandEvent& event );
-    virtual void ReCreateHToolbar();
-    virtual void ReCreateVToolbar();
-    virtual void ReCreateMenuBar();
+    virtual void ReCreateHToolbar() override;
+    virtual void ReCreateVToolbar() override;
+    virtual void ReCreateMenuBar() override;
 
-    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos );
-    virtual double BestZoom();
+    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos ) override;
+    virtual double BestZoom() override;
     void ClickOnLibList( wxCommandEvent& event );
     void ClickOnCmpList( wxCommandEvent& event );
     void OnSetRelativeOffset( wxCommandEvent& event );
 
-    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 );
+    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 ) override;
 
     /**
      * Function OnHotKey
@@ -103,10 +103,10 @@ public:
      * case insensitive
      * </p>
      */
-    virtual bool OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, EDA_ITEM* aItem = NULL );
+    virtual bool OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, EDA_ITEM* aItem = NULL ) override;
 
-    virtual void LoadSettings( wxConfigBase* aCfg );
-    virtual void SaveSettings( wxConfigBase* aCfg );
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     /**
      * Set the selected library in the library window.
@@ -135,7 +135,7 @@ private:
      * is called when the frame frame is activate to reload the libraries and component lists
      * that can be changed by the schematic editor or the library editor.
      */
-    virtual void OnActivate( wxActivateEvent& event );
+    virtual void OnActivate( wxActivateEvent& event ) override;
 
     void SelectCurrentLibrary();
     void SelectAndViewLibraryPart( int option );
@@ -146,7 +146,7 @@ private:
      */
     void ExportToSchematicLibraryPart( wxCommandEvent& event );
     void ViewOneLibraryContent( PART_LIB* Lib, int Flag );
-    virtual bool OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu );
+    virtual bool OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu ) override;
     void DClickOnCmpList( wxCommandEvent& event );
 
     wxComboBox*         m_selpartBox;
diff --git a/gerbview/class_excellon.h b/gerbview/class_excellon.h
index d115d7b..cdbbf27 100644
--- a/gerbview/class_excellon.h
+++ b/gerbview/class_excellon.h
@@ -106,7 +106,7 @@ public: EXCELLON_IMAGE( GERBVIEW_FRAME* aParent, int layer ) :
 
     ~EXCELLON_IMAGE() {};
 
-    virtual void ResetDefaultValues()
+    virtual void ResetDefaultValues() override
     {
         GERBER_IMAGE::ResetDefaultValues();
         SelectUnits( false );
diff --git a/gerbview/class_gbr_layer_box_selector.h b/gerbview/class_gbr_layer_box_selector.h
index 17f0a01..4340efe 100644
--- a/gerbview/class_gbr_layer_box_selector.h
+++ b/gerbview/class_gbr_layer_box_selector.h
@@ -41,16 +41,16 @@ public:
     }
 
     // Reload the Layers names and bitmaps
-    virtual void Resync();
+    virtual void Resync() override;
 
     // Returns a color index from the layer id
-    virtual EDA_COLOR_T GetLayerColor( int aLayer ) const;
+    virtual EDA_COLOR_T GetLayerColor( int aLayer ) const override;
 
     // Returns true if the layer id is enabled (i.e. is it should be displayed)
-    virtual bool IsLayerEnabled( int aLayer ) const { return true; };
+    virtual bool IsLayerEnabled( int aLayer ) const override { return true; };
 
     // Returns the name of the layer id
-    virtual wxString GetLayerName( int aLayer ) const;
+    virtual wxString GetLayerName( int aLayer ) const override;
 };
 
 #endif //CLASS_GBR_LAYER_BOX_SELECTOR_H
diff --git a/gerbview/class_gbr_layout.h b/gerbview/class_gbr_layout.h
index e5c986d..82ba2cf 100644
--- a/gerbview/class_gbr_layout.h
+++ b/gerbview/class_gbr_layout.h
@@ -140,7 +140,7 @@ public:
     }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;  // overload
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 
 #endif
 };
diff --git a/gerbview/class_gbr_screen.h b/gerbview/class_gbr_screen.h
index 6a1a69f..1e2f735 100644
--- a/gerbview/class_gbr_screen.h
+++ b/gerbview/class_gbr_screen.h
@@ -56,13 +56,13 @@ public:
 //    void        SetPreviousZoom();
 //    void        SetLastZoom();
 
-    virtual int MilsToIuScalar();
+    virtual int MilsToIuScalar() override;
 
     /**
      * Function ClearUndoORRedoList
      * virtual pure in BASE_SCREEN, so it must be defined here
      */
-    virtual void ClearUndoORRedoList( UNDO_REDO_CONTAINER& aList, int aItemCount = -1 );
+    virtual void ClearUndoORRedoList( UNDO_REDO_CONTAINER& aList, int aItemCount = -1 ) override;
 };
 
 
diff --git a/gerbview/class_gerber_draw_item.h b/gerbview/class_gerber_draw_item.h
index 9ef134e..1c26795 100644
--- a/gerbview/class_gerber_draw_item.h
+++ b/gerbview/class_gerber_draw_item.h
@@ -213,7 +213,7 @@ public:
      */
     D_CODE* GetDcodeDescr();
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     /* Display on screen: */
     void Draw( EDA_DRAW_PANEL*         aPanel,
@@ -240,7 +240,7 @@ public:
     /* divers */
     int Shape() const { return m_Shape; }
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
     wxString ShowGBRShape();
 
@@ -250,7 +250,7 @@ public:
      * @param aRefPos a wxPoint to test
      * @return bool - true if a hit, else false
      */
-    virtual bool HitTest( const wxPoint& aRefPos ) const;
+    virtual bool HitTest( const wxPoint& aRefPos ) const override;
 
     /**
      * Function HitTest (overloaded)
@@ -266,7 +266,7 @@ public:
      * returns the class name.
      * @return wxString
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "GERBER_DRAW_ITEM" );
     }
@@ -301,7 +301,7 @@ public:
         delete this;
     }
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;  // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 
 };
diff --git a/gerbview/class_gerbview_layer_widget.h b/gerbview/class_gerbview_layer_widget.h
index 6e01e3b..bde6fa9 100644
--- a/gerbview/class_gerbview_layer_widget.h
+++ b/gerbview/class_gerbview_layer_widget.h
@@ -75,7 +75,7 @@ class GERBER_LAYER_WIDGET : public LAYER_WIDGET
      * @return true if bitmaps shown in Render layer list
      * are alternate bitmaps, or false if they are "normal" bitmaps
      */
-    virtual bool useAlternateBitmap(int aRow);
+    virtual bool useAlternateBitmap(int aRow) override;
 
 public:
 
@@ -98,11 +98,11 @@ public:
     void ReFillRender();
 
     //-----<implement LAYER_WIDGET abstract callback functions>-----------
-    virtual void OnLayerColorChange( int aLayer, EDA_COLOR_T aColor );
-    virtual bool OnLayerSelect( int aLayer );
-    virtual void OnLayerVisible( int aLayer, bool isVisible, bool isFinal );
-    virtual void OnRenderColorChange( int aId, EDA_COLOR_T aColor );
-    virtual void OnRenderEnable( int aId, bool isEnabled );
+    virtual void OnLayerColorChange( int aLayer, EDA_COLOR_T aColor ) override;
+    virtual bool OnLayerSelect( int aLayer ) override;
+    virtual void OnLayerVisible( int aLayer, bool isVisible, bool isFinal ) override;
+    virtual void OnRenderColorChange( int aId, EDA_COLOR_T aColor ) override;
+    virtual void OnRenderEnable( int aId, bool isEnabled ) override;
     /**
      * Function SetLayersManagerTabsText
      * Update the layer manager tabs labels
diff --git a/gerbview/dialogs/dialog_print_using_printer.cpp b/gerbview/dialogs/dialog_print_using_printer.cpp
index 4c72164..4c31f1b 100644
--- a/gerbview/dialogs/dialog_print_using_printer.cpp
+++ b/gerbview/dialogs/dialog_print_using_printer.cpp
@@ -70,14 +70,14 @@ public:
     ~DIALOG_PRINT_USING_PRINTER() {};
 
 private:
-    virtual void OnCloseWindow( wxCloseEvent& event );
+    virtual void OnCloseWindow( wxCloseEvent& event ) override;
     void OnInitDialog( wxInitDialogEvent& event );
-    virtual void OnPageSetup( wxCommandEvent& event );
-    virtual void OnPrintPreview( wxCommandEvent& event );
-    virtual void OnPrintButtonClick( wxCommandEvent& event );
-    virtual void OnScaleSelectionClick( wxCommandEvent& event );
+    virtual void OnPageSetup( wxCommandEvent& event ) override;
+    virtual void OnPrintPreview( wxCommandEvent& event ) override;
+    virtual void OnPrintButtonClick( wxCommandEvent& event ) override;
+    virtual void OnScaleSelectionClick( wxCommandEvent& event ) override;
 
-    virtual void OnButtonCancelClick( wxCommandEvent& event ) { Close(); }
+    virtual void OnButtonCancelClick( wxCommandEvent& event ) override { Close(); }
     void SetPrintParameters( );
     void InitValues( );
 
diff --git a/gerbview/dialogs/dialog_show_page_borders.h b/gerbview/dialogs/dialog_show_page_borders.h
index 8c0b65b..9a69343 100644
--- a/gerbview/dialogs/dialog_show_page_borders.h
+++ b/gerbview/dialogs/dialog_show_page_borders.h
@@ -41,7 +41,7 @@ public:
     ~DIALOG_PAGE_SHOW_PAGE_BORDERS() {};
 
 private:
-    virtual void OnOKBUttonClick( wxCommandEvent& event );
-    virtual void OnCancelButtonClick( wxCommandEvent& event );
+    virtual void OnOKBUttonClick( wxCommandEvent& event ) override;
+    virtual void OnCancelButtonClick( wxCommandEvent& event ) override;
 };
 
diff --git a/gerbview/dialogs/gerbview_dialog_display_options_frame.cpp b/gerbview/dialogs/gerbview_dialog_display_options_frame.cpp
index eb0b0ef..c32a38e 100644
--- a/gerbview/dialogs/gerbview_dialog_display_options_frame.cpp
+++ b/gerbview/dialogs/gerbview_dialog_display_options_frame.cpp
@@ -53,10 +53,10 @@ public:
     ~DIALOG_DISPLAY_OPTIONS() {};
 
 private:
-    virtual void OnOKBUttonClick( wxCommandEvent& event );
-    virtual void OnCancelButtonClick( wxCommandEvent& event );
+    virtual void OnOKBUttonClick( wxCommandEvent& event ) override;
+    virtual void OnCancelButtonClick( wxCommandEvent& event ) override;
     void initOptDialog( );
-    virtual void OnMiddleBtnPanEnbl( wxCommandEvent& event )
+    virtual void OnMiddleBtnPanEnbl( wxCommandEvent& event ) override
     {
         m_OptMiddleButtonPanLimited->Enable( m_OptMiddleButtonPan->GetValue() );
     }
diff --git a/gerbview/gerbview.cpp b/gerbview/gerbview.cpp
index 914840b..acab25b 100644
--- a/gerbview/gerbview.cpp
+++ b/gerbview/gerbview.cpp
@@ -69,11 +69,11 @@ static struct IFACE : public KIFACE_I
         KIFACE_I( aName, aType )
     {}
 
-    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits );
+    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits ) override;
 
-    virtual void OnKifaceEnd();
+    virtual void OnKifaceEnd() override;
 
-    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 )
+    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 ) override
     {
         switch( aClassId )
         {
@@ -102,7 +102,7 @@ static struct IFACE : public KIFACE_I
      *
      * @return void* - and must be cast into the know type.
      */
-    virtual void* IfaceOrAddress( int aDataId )
+    virtual void* IfaceOrAddress( int aDataId ) override
     {
         return NULL;
     }
diff --git a/gerbview/gerbview_frame.h b/gerbview/gerbview_frame.h
index 94876ef..3f3c607 100644
--- a/gerbview/gerbview_frame.h
+++ b/gerbview/gerbview_frame.h
@@ -128,21 +128,21 @@ public:
      */
     EDA_RECT            GetGerberLayoutBoundingBox();
 
-    virtual void                SetPageSettings( const PAGE_INFO& aPageSettings );
-    virtual const PAGE_INFO&    GetPageSettings() const;
-    virtual const wxSize        GetPageSizeIU() const;
+    virtual void                SetPageSettings( const PAGE_INFO& aPageSettings ) override;
+    virtual const PAGE_INFO&    GetPageSettings() const override;
+    virtual const wxSize        GetPageSizeIU() const override;
 
-    virtual const wxPoint&      GetAuxOrigin() const;
-    virtual void                SetAuxOrigin( const wxPoint& aPoint );
+    virtual const wxPoint&      GetAuxOrigin() const override;
+    virtual void                SetAuxOrigin( const wxPoint& aPoint ) override;
 
-    virtual const wxPoint&      GetGridOrigin() const { return m_grid_origin; }
-    virtual void                SetGridOrigin( const wxPoint& aPoint )
+    virtual const wxPoint&      GetGridOrigin() const override { return m_grid_origin; }
+    virtual void                SetGridOrigin( const wxPoint& aPoint ) override
     {
         m_grid_origin = aPoint;
     }
 
-    virtual const TITLE_BLOCK&  GetTitleBlock() const;
-    virtual void                SetTitleBlock( const TITLE_BLOCK& aTitleBlock );
+    virtual const TITLE_BLOCK&  GetTitleBlock() const override;
+    virtual void                SetTitleBlock( const TITLE_BLOCK& aTitleBlock ) override;
 
     /**
      * Function SetCurItem
@@ -212,11 +212,11 @@ public:
 
     void    OnCloseWindow( wxCloseEvent& Event );
 
-    virtual bool    OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl );
+    virtual bool    OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl ) override;
 
     // Virtual basic functions:
-    virtual void    RedrawActiveWindow( wxDC* DC, bool EraseBg );
-    virtual void    ReCreateHToolbar();
+    virtual void    RedrawActiveWindow( wxDC* DC, bool EraseBg ) override;
+    virtual void    ReCreateHToolbar() override;
 
     /**
      * Function ReCreateVToolbar
@@ -224,19 +224,19 @@ public:
      *
      * @note This is currently not used.
      */
-    virtual void    ReCreateVToolbar();
+    virtual void    ReCreateVToolbar() override;
 
     /**
      * Create or update the left vertical toolbar (option toolbar
      */
     void    ReCreateOptToolbar();
 
-    virtual void    ReCreateMenuBar();
-    virtual void    OnLeftClick( wxDC* DC, const wxPoint& MousePos );
-    virtual void    OnLeftDClick( wxDC* DC, const wxPoint& MousePos );
-    virtual bool    OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu );
-    virtual double  BestZoom();
-    virtual void    UpdateStatusBar();
+    virtual void    ReCreateMenuBar() override;
+    virtual void    OnLeftClick( wxDC* DC, const wxPoint& MousePos ) override;
+    virtual void    OnLeftDClick( wxDC* DC, const wxPoint& MousePos ) override;
+    virtual bool    OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu ) override;
+    virtual double  BestZoom() override;
+    virtual void    UpdateStatusBar() override;
 
     /**
      * Function GetZoomLevelIndicator
@@ -244,7 +244,7 @@ public:
      * level indicator in dialogs.
      * Virtual from the base class
      */
-    virtual const wxString GetZoomLevelIndicator() const;
+    virtual const wxString GetZoomLevelIndicator() const override;
 
     /**
      * Function ReportMessage
@@ -312,7 +312,7 @@ public:
      * It may be overloaded by derived classes
      * @param aVisible = true if the grid must be shown
      */
-    virtual void    SetGridVisibility( bool aVisible );
+    virtual void    SetGridVisibility( bool aVisible ) override;
 
     /**
      * Function GetVisibleLayers
@@ -470,11 +470,11 @@ public:
      */
     PARAM_CFG_ARRAY&    GetConfigurationSettings( void );
 
-    virtual void LoadSettings( wxConfigBase* aCfg );
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
 
-    virtual void SaveSettings( wxConfigBase* aCfg );
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
-    virtual void                ShowChangedLanguage();
+    virtual void                ShowChangedLanguage() override;
 
     void                Process_Special_Functions( wxCommandEvent& event );
     void                OnSelectOptionToolbar( wxCommandEvent& event );
@@ -524,7 +524,7 @@ public:
      * @param aPosition The cursor position in logical (drawing) units.
      * @param aItem = NULL or pointer on a EDA_ITEM under the mouse cursor
      */
-    virtual bool OnHotKey( wxDC* aDC, int aHotkeyCode, const wxPoint& aPosition, EDA_ITEM* aItem = NULL );
+    virtual bool OnHotKey( wxDC* aDC, int aHotkeyCode, const wxPoint& aPosition, EDA_ITEM* aItem = NULL ) override;
 
     GERBER_DRAW_ITEM*   GerberGeneralLocateAndDisplay();
     GERBER_DRAW_ITEM*   Locate( const wxPoint& aPosition, int typeloc );
@@ -549,13 +549,13 @@ public:
      * returns the block command (BLOCK_MOVE, BLOCK_COPY...) corresponding to
      * the \a aKey (ALT, SHIFT ALT ..)
      */
-    virtual int         BlockCommand( int key );
+    virtual int         BlockCommand( int key ) override;
 
     /**
      * Function HandleBlockPlace
      * handles the block place command.
      */
-    virtual void        HandleBlockPlace( wxDC* DC );
+    virtual void        HandleBlockPlace( wxDC* DC ) override;
 
     /**
      * Function HandleBlockEnd( )
@@ -568,7 +568,7 @@ public:
      * @return false if no item selected, or command finished,
      *         true if some items found and HandleBlockPlace must be called later.
      */
-    virtual bool        HandleBlockEnd( wxDC* DC );
+    virtual bool        HandleBlockEnd( wxDC* DC ) override;
 
     /**
      * Function Block_Move
@@ -634,7 +634,7 @@ public:
     bool                LoadExcellonFiles( const wxString& aFileName );
     bool                Read_EXCELLON_File( const wxString& aFullFileName );
 
-    virtual bool        GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 );
+    virtual bool        GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 ) override;
 
     /**
      * Set Size Items (Lines, Flashes) from DCodes List
@@ -680,7 +680,7 @@ public:
      * @param aData = a pointer on an auxiliary data (not always used, NULL if not used)
      */
     virtual void    PrintPage( wxDC* aDC, LSET aPrintMasklayer, bool aPrintMirrorMode,
-                               void* aData = NULL );
+                               void* aData = NULL ) override;
 
     /**
      * Function DrawItemsDCodeID
diff --git a/gerbview/select_layers_to_pcb.h b/gerbview/select_layers_to_pcb.h
index 13f85e9..f0879c3 100644
--- a/gerbview/select_layers_to_pcb.h
+++ b/gerbview/select_layers_to_pcb.h
@@ -57,14 +57,14 @@ public: LAYERS_MAP_DIALOG( GERBVIEW_FRAME* parent );
 private:
     void initDialog();
     void normalizeBrdLayersCount();
-    virtual void OnBrdLayersCountSelection( wxCommandEvent& event );
+    virtual void OnBrdLayersCountSelection( wxCommandEvent& event ) override;
     void OnSelectLayer( wxCommandEvent& event );
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 
-    virtual void OnStoreSetup( wxCommandEvent& event );
-    virtual void OnGetSetup( wxCommandEvent& event );
-    virtual void OnResetClick( wxCommandEvent& event );
+    virtual void OnStoreSetup( wxCommandEvent& event ) override;
+    virtual void OnGetSetup( wxCommandEvent& event ) override;
+    virtual void OnResetClick( wxCommandEvent& event ) override;
 
     DECLARE_EVENT_TABLE()
 };
diff --git a/include/base_struct.h b/include/base_struct.h
index e6238f3..6320a45 100644
--- a/include/base_struct.h
+++ b/include/base_struct.h
@@ -501,10 +501,10 @@ public:
 #endif
 
     /// @copydoc VIEW_ITEM::ViewBBox()
-    virtual const BOX2I ViewBBox() const;
+    virtual const BOX2I ViewBBox() const override;
 
     /// @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
 #if defined(DEBUG)
 
diff --git a/include/class_base_screen.h b/include/class_base_screen.h
index d1d745d..1aa8fc2 100644
--- a/include/class_base_screen.h
+++ b/include/class_base_screen.h
@@ -469,7 +469,7 @@ public:
      * returns the class name.
      * @return wxString
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "BASE_SCREEN" );
     }
@@ -479,7 +479,7 @@ public:
     void ClearBlockCommand() { m_BlockLocate.Clear(); }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;     // overload
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 };
 
diff --git a/include/class_board_item.h b/include/class_board_item.h
index 953759f..45aa984 100644
--- a/include/class_board_item.h
+++ b/include/class_board_item.h
@@ -265,7 +265,7 @@ public:
      */
     wxString GetLayerName() const;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const
+    virtual bool HitTest( const wxPoint& aPosition ) const override
     {
         return EDA_ITEM::HitTest( aPosition );
     }
@@ -313,7 +313,7 @@ public:
     static std::string FormatInternalUnits( const wxSize& aSize );
 
     /// @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 };
 
 #endif /* BOARD_ITEM_STRUCT_H */
diff --git a/include/class_draw_panel_gal.h b/include/class_draw_panel_gal.h
index 9324937..fae5a28 100644
--- a/include/class_draw_panel_gal.h
+++ b/include/class_draw_panel_gal.h
@@ -108,7 +108,7 @@ public:
     }
 
     /// @copydoc wxWindow::Refresh()
-    virtual void Refresh( bool aEraseBackground = true, const wxRect* aRect = NULL );
+    virtual void Refresh( bool aEraseBackground = true, const wxRect* aRect = NULL ) override;
 
     /**
      * Function ForceRefresh()
diff --git a/include/class_drawpanel.h b/include/class_drawpanel.h
index b37dc69..28affdf 100644
--- a/include/class_drawpanel.h
+++ b/include/class_drawpanel.h
@@ -237,7 +237,7 @@ public:
      * </p>
      * @param aDC The device context to prepare.
      */
-    virtual void DoPrepareDC( wxDC& aDC );
+    virtual void DoPrepareDC( wxDC& aDC ) override;
 
     /**
      * Function DeviceToLogical
@@ -325,7 +325,7 @@ public:
     void RefreshDrawingRect( const EDA_RECT& aRect, bool aEraseBackground = true );
 
     /// @copydoc wxWindow::Refresh()
-    virtual void Refresh( bool eraseBackground = true, const wxRect* rect = NULL );
+    virtual void Refresh( bool eraseBackground = true, const wxRect* rect = NULL ) override;
 
     /**
      * Function GetScreenCenterLogicalPosition
diff --git a/include/class_pcb_screen.h b/include/class_pcb_screen.h
index e26d34c..e6c9924 100644
--- a/include/class_pcb_screen.h
+++ b/include/class_pcb_screen.h
@@ -61,7 +61,7 @@ public:
     void        SetPreviousZoom();
     void        SetLastZoom();
 
-    virtual int MilsToIuScalar();
+    virtual int MilsToIuScalar() override;
 
     /**
      * Function GetCurItem
@@ -99,7 +99,7 @@ public:
      * items are removed from the beginning of the list.
      * So this function can be called to remove old commands
      */
-    virtual void ClearUndoORRedoList( UNDO_REDO_CONTAINER& aList, int aItemCount = -1 );
+    virtual void ClearUndoORRedoList( UNDO_REDO_CONTAINER& aList, int aItemCount = -1 ) override;
 };
 
 #endif  // CLASS_PCB_SCREEN_H_
diff --git a/include/class_sch_screen.h b/include/class_sch_screen.h
index d960346..a7f6d3e 100644
--- a/include/class_sch_screen.h
+++ b/include/class_sch_screen.h
@@ -105,7 +105,7 @@ public:
 
     ~SCH_SCREEN();
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "SCH_SCREEN" );
     }
@@ -344,7 +344,7 @@ public:
      * items are removed from the beginning of the list.
      * So this function can be called to remove old commands
      */
-    virtual void ClearUndoORRedoList( UNDO_REDO_CONTAINER& aList, int aItemCount = -1 );
+    virtual void ClearUndoORRedoList( UNDO_REDO_CONTAINER& aList, int aItemCount = -1 ) override;
 
     /**
      * Function Save
@@ -523,7 +523,7 @@ public:
     int UpdatePickList();
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;     // overload
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 };
 
diff --git a/include/class_worksheet_dataitem.h b/include/class_worksheet_dataitem.h
index 65bfddc..d7e7462 100644
--- a/include/class_worksheet_dataitem.h
+++ b/include/class_worksheet_dataitem.h
@@ -306,7 +306,7 @@ private:
 public:
     WORKSHEET_DATAITEM_POLYPOLYGON( );
 
-    virtual int GetPenSizeUi()
+    virtual int GetPenSizeUi() override
     {
         return KiROUND( m_LineWidth * m_WSunits2Iu );
     }
@@ -314,7 +314,7 @@ public:
    /**
      * @return false  (no end point)
      */
-    virtual bool HasEndPoint() { return false; };
+    virtual bool HasEndPoint() override { return false; }
 
     /**
      * add a corner in corner list
@@ -377,7 +377,7 @@ public:
      */
     void SetBoundingBox();
 
-    virtual bool IsInsidePage( int ii ) const;
+    virtual bool IsInsidePage( int ii ) const override;
 };
 
 
@@ -405,9 +405,9 @@ public:
     /**
      * @return false  (no end point)
      */
-    virtual bool HasEndPoint() { return false; };
+    virtual bool HasEndPoint() override { return false; }
 
-    virtual int GetPenSizeUi()
+    virtual int GetPenSizeUi() override
     {
         if( m_LineWidth )
             return KiROUND( m_LineWidth * m_WSunits2Iu );
@@ -510,7 +510,7 @@ public:
     /**
      * @return false  (no end point)
      */
-    virtual bool HasEndPoint() { return false; }
+    virtual bool HasEndPoint() override { return false; }
 
     /**
      * @return the PPI of the bitmap
diff --git a/include/config_params.h b/include/config_params.h
index 16cd089..2cd7f0a 100644
--- a/include/config_params.h
+++ b/include/config_params.h
@@ -140,8 +140,8 @@ public:
                    int max = std::numeric_limits<int>::max(),
                    const wxChar* group = NULL );
 
-    virtual void ReadParam( wxConfigBase* aConfig ) const;
-    virtual void SaveParam( wxConfigBase* aConfig ) const;
+    virtual void ReadParam( wxConfigBase* aConfig ) const override;
+    virtual void SaveParam( wxConfigBase* aConfig ) const override;
 };
 
 /**
@@ -170,8 +170,8 @@ public:
                    const wxChar* group = NULL,
                    double aBiu2cfgunit = 1.0 );
 
-    virtual void ReadParam( wxConfigBase* aConfig ) const;
-    virtual void SaveParam( wxConfigBase* aConfig ) const;
+    virtual void ReadParam( wxConfigBase* aConfig ) const override;
+    virtual void SaveParam( wxConfigBase* aConfig ) const override;
 };
 
 
@@ -191,8 +191,8 @@ public:
     PARAM_CFG_SETCOLOR( bool Insetup, const wxString& ident, EDA_COLOR_T* ptparam,
                         EDA_COLOR_T default_val, const wxChar* group = NULL );
 
-    virtual void ReadParam( wxConfigBase* aConfig ) const;
-    virtual void SaveParam( wxConfigBase* aConfig ) const;
+    virtual void ReadParam( wxConfigBase* aConfig ) const override;
+    virtual void SaveParam( wxConfigBase* aConfig ) const override;
 };
 
 
@@ -215,8 +215,8 @@ public:
                       double default_val = 0.0, double min = 0.0, double max = 10000.0,
                       const wxChar* group = NULL );
 
-    virtual void ReadParam( wxConfigBase* aConfig ) const;
-    virtual void SaveParam( wxConfigBase* aConfig ) const;
+    virtual void ReadParam( wxConfigBase* aConfig ) const override;
+    virtual void SaveParam( wxConfigBase* aConfig ) const override;
 };
 
 
@@ -236,8 +236,8 @@ public:
     PARAM_CFG_BOOL( bool Insetup, const wxString& ident, bool* ptparam,
                     int default_val = false, const wxChar* group = NULL );
 
-    virtual void ReadParam( wxConfigBase* aConfig ) const;
-    virtual void SaveParam( wxConfigBase* aConfig ) const;
+    virtual void ReadParam( wxConfigBase* aConfig ) const override;
+    virtual void SaveParam( wxConfigBase* aConfig ) const override;
 };
 
 
@@ -260,8 +260,8 @@ public:
                         const wxString& default_val = wxEmptyString,
                         const wxChar* group = NULL );
 
-    virtual void ReadParam( wxConfigBase* aConfig ) const;
-    virtual void SaveParam( wxConfigBase* aConfig ) const;
+    virtual void ReadParam( wxConfigBase* aConfig ) const override;
+    virtual void SaveParam( wxConfigBase* aConfig ) const override;
 };
 
 
@@ -279,8 +279,8 @@ public:
 public:
     PARAM_CFG_FILENAME( const wxString& ident, wxString* ptparam,
             const wxChar* group = NULL );
-    virtual void ReadParam( wxConfigBase* aConfig ) const;
-    virtual void SaveParam( wxConfigBase* aConfig ) const;
+    virtual void ReadParam( wxConfigBase* aConfig ) const override;
+    virtual void SaveParam( wxConfigBase* aConfig ) const override;
 };
 
 
@@ -294,8 +294,8 @@ public:
                                 wxArrayString* ptparam,
                                 const wxChar*  group = NULL );
 
-    virtual void ReadParam( wxConfigBase* aConfig ) const;
-    virtual void SaveParam( wxConfigBase* aConfig ) const;
+    virtual void ReadParam( wxConfigBase* aConfig ) const override;
+    virtual void SaveParam( wxConfigBase* aConfig ) const override;
 };
 
 
diff --git a/include/dialog_get_component.h b/include/dialog_get_component.h
index a6dd8f2..0eafe57 100644
--- a/include/dialog_get_component.h
+++ b/include/dialog_get_component.h
@@ -73,9 +73,9 @@ public:
 private:
     void     initDialog( wxArrayString& aHistoryList );
 
-    virtual void OnCancel( wxCommandEvent& event );
-    virtual void Accept( wxCommandEvent& event );
-    virtual void GetExtraSelection( wxCommandEvent& event );
+    virtual void OnCancel( wxCommandEvent& event ) override;
+    virtual void Accept( wxCommandEvent& event ) override;
+    virtual void GetExtraSelection( wxCommandEvent& event ) override;
 };
 
 
diff --git a/include/dialog_helpers.h b/include/dialog_helpers.h
index 41e61de..7daf71e 100644
--- a/include/dialog_helpers.h
+++ b/include/dialog_helpers.h
@@ -88,12 +88,12 @@ public:
     wxString GetTextSelection( int aColumn = 0 );
 
 private:
-    virtual void onClose( wxCloseEvent& event );
-    virtual void onCancelClick( wxCommandEvent& event );
-    virtual void onOkClick( wxCommandEvent& event );
-    virtual void onListItemSelected( wxListEvent& event );
-    virtual void onListItemActivated( wxListEvent& event );
-    virtual void textChangeInFilterBox(wxCommandEvent& event);
+    virtual void onClose( wxCloseEvent& event ) override;
+    virtual void onCancelClick( wxCommandEvent& event ) override;
+    virtual void onOkClick( wxCommandEvent& event ) override;
+    virtual void onListItemSelected( wxListEvent& event ) override;
+    virtual void onListItemActivated( wxListEvent& event ) override;
+    virtual void textChangeInFilterBox(wxCommandEvent& event) override;
 
     void    initDialog( const wxArrayString& aItemHeaders,
                         const wxString& aSelection);
diff --git a/include/dialog_hotkeys_editor.h b/include/dialog_hotkeys_editor.h
index d008f75..a83eea9 100644
--- a/include/dialog_hotkeys_editor.h
+++ b/include/dialog_hotkeys_editor.h
@@ -105,7 +105,7 @@ protected:
      *
      * @return String containing the text for the specified row, column combination
      */
-    virtual wxString OnGetItemText( long aRow, long aColumn ) const;
+    virtual wxString OnGetItemText( long aRow, long aColumn ) const override;
 
     /**
      * Function OnChar
@@ -233,7 +233,7 @@ private:
      *
      * @param aEvent is the button press event, unused
      */
-    virtual void OnOKClicked( wxCommandEvent& aEvent );
+    virtual void OnOKClicked( wxCommandEvent& aEvent ) override;
 
     /**
      * Function CancelClicked
@@ -241,7 +241,7 @@ private:
      *
      * @param aEvent is the button press event, unused
      */
-    virtual void CancelClicked( wxCommandEvent& aEvent );
+    virtual void CancelClicked( wxCommandEvent& aEvent ) override;
 
     /**
      * Function UndoClicked
@@ -249,7 +249,7 @@ private:
      *
      * @param aEvent is the button press event, unused
      */
-    virtual void UndoClicked( wxCommandEvent& aEvent );
+    virtual void UndoClicked( wxCommandEvent& aEvent ) override;
 };
 
 /**
diff --git a/include/dialog_shim.h b/include/dialog_shim.h
index 88389f0..514089e 100644
--- a/include/dialog_shim.h
+++ b/include/dialog_shim.h
@@ -79,8 +79,8 @@ public:
     bool IsQuasiModal()         { return m_qmodal_showing; }
 
     // wxDialog
-    virtual bool Show( bool show );
-    virtual bool Enable( bool enable );
+    virtual bool Show( bool show ) override;
+    virtual bool Enable( bool enable ) override;
 
 protected:
 
diff --git a/include/draw_frame.h b/include/draw_frame.h
index dd397a4..9141d89 100644
--- a/include/draw_frame.h
+++ b/include/draw_frame.h
@@ -348,7 +348,7 @@ public:
 
     virtual void ReCreateHToolbar() = 0;
     virtual void ReCreateVToolbar() = 0;
-    virtual void ReCreateMenuBar();
+    virtual void ReCreateMenuBar() override;
     virtual void ReCreateAuxiliaryToolbar();
 
     /**
@@ -638,9 +638,9 @@ public:
     void OnSockRequest( wxSocketEvent& evt );
     void OnSockRequestServer( wxSocketEvent& evt );
 
-    virtual void LoadSettings( wxConfigBase* aCfg );
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
 
-    virtual void SaveSettings( wxConfigBase* aCfg );
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     /**
      * Append a message to the message panel.
diff --git a/include/filter_reader.h b/include/filter_reader.h
index a10eaa6..8ffcd79 100644
--- a/include/filter_reader.h
+++ b/include/filter_reader.h
@@ -49,14 +49,14 @@ public:
 
     ~FILTER_READER();
 
-    virtual char* ReadLine() throw( IO_ERROR );
+    virtual char* ReadLine() throw( IO_ERROR ) override;
 
-    virtual const wxString& GetSource() const
+    virtual const wxString& GetSource() const override
     {
         return reader.GetSource();
     }
 
-    virtual unsigned LineNumber() const
+    virtual unsigned LineNumber() const override
     {
         return reader.LineNumber();
     }
@@ -83,14 +83,14 @@ public:
 
     ~WHITESPACE_FILTER_READER();
 
-    virtual char* ReadLine() throw( IO_ERROR );
+    virtual char* ReadLine() throw( IO_ERROR ) override;
 
-    virtual const wxString& GetSource() const
+    virtual const wxString& GetSource() const override
     {
         return reader.GetSource();
     }
 
-    virtual unsigned LineNumber() const
+    virtual unsigned LineNumber() const override
     {
         return reader.LineNumber();
     }
diff --git a/include/gal/cairo/cairo_compositor.h b/include/gal/cairo/cairo_compositor.h
index 6d5d74a..906458f 100644
--- a/include/gal/cairo/cairo_compositor.h
+++ b/include/gal/cairo/cairo_compositor.h
@@ -45,28 +45,28 @@ public:
     virtual ~CAIRO_COMPOSITOR();
 
     /// @copydoc COMPOSITOR::Initialize()
-    virtual void Initialize();
+    virtual void Initialize() override;
 
     /// @copydoc COMPOSITOR::Resize()
-    virtual void Resize( unsigned int aWidth, unsigned int aHeight );
+    virtual void Resize( unsigned int aWidth, unsigned int aHeight ) override;
 
     /// @copydoc COMPOSITOR::CreateBuffer()
-    virtual unsigned int CreateBuffer();
+    virtual unsigned int CreateBuffer() override;
 
     /// @copydoc COMPOSITOR::GetBuffer()
-    inline virtual unsigned int GetBuffer() const
+    inline virtual unsigned int GetBuffer() const override
     {
         return m_current + 1;
     }
 
     /// @copydoc COMPOSITOR::SetBuffer()
-    virtual void SetBuffer( unsigned int aBufferHandle );
+    virtual void SetBuffer( unsigned int aBufferHandle ) override;
 
     /// @copydoc COMPOSITOR::ClearBuffer()
-    virtual void ClearBuffer();
+    virtual void ClearBuffer() override;
 
     /// @copydoc COMPOSITOR::DrawBuffer()
-    virtual void DrawBuffer( unsigned int aBufferHandle );
+    virtual void DrawBuffer( unsigned int aBufferHandle ) override;
 
     /**
      * Function SetMainContext()
diff --git a/include/gal/cairo/cairo_gal.h b/include/gal/cairo/cairo_gal.h
index dca18ac..80dd622 100644
--- a/include/gal/cairo/cairo_gal.h
+++ b/include/gal/cairo/cairo_gal.h
@@ -90,150 +90,150 @@ public:
     // ---------------
 
     /// @copydoc GAL::BeginDrawing()
-    virtual void BeginDrawing();
+    virtual void BeginDrawing() override;
 
     /// @copydoc GAL::EndDrawing()
-    virtual void EndDrawing();
+    virtual void EndDrawing() override;
 
     /// @copydoc GAL::DrawLine()
-    virtual void DrawLine( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint );
+    virtual void DrawLine( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint ) override;
 
     /// @copydoc GAL::DrawSegment()
-    virtual void DrawSegment( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint, double aWidth );
+    virtual void DrawSegment( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint, double aWidth ) override;
 
     /// @copydoc GAL::DrawCircle()
-    virtual void DrawCircle( const VECTOR2D& aCenterPoint, double aRadius );
+    virtual void DrawCircle( const VECTOR2D& aCenterPoint, double aRadius ) override;
 
     /// @copydoc GAL::DrawArc()
     virtual void DrawArc( const VECTOR2D& aCenterPoint, double aRadius,
-                          double aStartAngle, double aEndAngle );
+                          double aStartAngle, double aEndAngle ) override;
 
     /// @copydoc GAL::DrawRectangle()
-    virtual void DrawRectangle( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint );
+    virtual void DrawRectangle( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint ) override;
 
     /// @copydoc GAL::DrawPolyline()
-    virtual void DrawPolyline( std::deque<VECTOR2D>& aPointList );
+    virtual void DrawPolyline( std::deque<VECTOR2D>& aPointList ) override;
 
     /// @copydoc GAL::DrawPolygon()
-    virtual void DrawPolygon( const std::deque<VECTOR2D>& aPointList );
+    virtual void DrawPolygon( const std::deque<VECTOR2D>& aPointList ) override;
 
     /// @copydoc GAL::DrawCurve()
     virtual void DrawCurve( const VECTOR2D& startPoint, const VECTOR2D& controlPointA,
-                            const VECTOR2D& controlPointB, const VECTOR2D& endPoint );
+                            const VECTOR2D& controlPointB, const VECTOR2D& endPoint ) override;
 
     // --------------
     // Screen methods
     // --------------
 
     /// @brief Resizes the canvas.
-    virtual void ResizeScreen( int aWidth, int aHeight );
+    virtual void ResizeScreen( int aWidth, int aHeight ) override;
 
     /// @brief Shows/hides the GAL canvas
-    virtual bool Show( bool aShow );
+    virtual bool Show( bool aShow ) override;
 
     /// @copydoc GAL::Flush()
-    virtual void Flush();
+    virtual void Flush() override;
 
     /// @copydoc GAL::ClearScreen()
-    virtual void ClearScreen( const COLOR4D& aColor );
+    virtual void ClearScreen( const COLOR4D& aColor ) override;
 
     // -----------------
     // Attribute setting
     // -----------------
 
     /// @copydoc GAL::SetIsFill()
-    virtual void SetIsFill( bool aIsFillEnabled );
+    virtual void SetIsFill( bool aIsFillEnabled ) override;
 
     /// @copydoc GAL::SetIsStroke()
-    virtual void SetIsStroke( bool aIsStrokeEnabled );
+    virtual void SetIsStroke( bool aIsStrokeEnabled ) override;
 
     /// @copydoc GAL::SetStrokeColor()
-    virtual void SetStrokeColor( const COLOR4D& aColor );
+    virtual void SetStrokeColor( const COLOR4D& aColor ) override;
 
     /// @copydoc GAL::SetFillColor()
-    virtual void SetFillColor( const COLOR4D& aColor );
+    virtual void SetFillColor( const COLOR4D& aColor ) override;
 
     /// @copydoc GAL::SetLineWidth()
-    virtual void SetLineWidth( double aLineWidth );
+    virtual void SetLineWidth( double aLineWidth ) override;
 
     /// @copydoc GAL::SetLayerDepth()
-    virtual void SetLayerDepth( double aLayerDepth );
+    virtual void SetLayerDepth( double aLayerDepth ) override;
 
     // --------------
     // Transformation
     // --------------
 
     /// @copydoc GAL::Transform()
-    virtual void Transform( const MATRIX3x3D& aTransformation );
+    virtual void Transform( const MATRIX3x3D& aTransformation ) override;
 
     /// @copydoc GAL::Rotate()
-    virtual void Rotate( double aAngle );
+    virtual void Rotate( double aAngle ) override;
 
     /// @copydoc GAL::Translate()
-    virtual void Translate( const VECTOR2D& aTranslation );
+    virtual void Translate( const VECTOR2D& aTranslation ) override;
 
     /// @copydoc GAL::Scale()
-    virtual void Scale( const VECTOR2D& aScale );
+    virtual void Scale( const VECTOR2D& aScale ) override;
 
     /// @copydoc GAL::Save()
-    virtual void Save();
+    virtual void Save() override;
 
     /// @copydoc GAL::Restore()
-    virtual void Restore();
+    virtual void Restore() override;
 
     // --------------------------------------------
     // Group methods
     // ---------------------------------------------
 
     /// @copydoc GAL::BeginGroup()
-    virtual int BeginGroup();
+    virtual int BeginGroup() override;
 
     /// @copydoc GAL::EndGroup()
-    virtual void EndGroup();
+    virtual void EndGroup() override;
 
     /// @copydoc GAL::DrawGroup()
-    virtual void DrawGroup( int aGroupNumber );
+    virtual void DrawGroup( int aGroupNumber ) override;
 
     /// @copydoc GAL::ChangeGroupColor()
-    virtual void ChangeGroupColor( int aGroupNumber, const COLOR4D& aNewColor );
+    virtual void ChangeGroupColor( int aGroupNumber, const COLOR4D& aNewColor ) override;
 
     /// @copydoc GAL::ChangeGroupDepth()
-    virtual void ChangeGroupDepth( int aGroupNumber, int aDepth );
+    virtual void ChangeGroupDepth( int aGroupNumber, int aDepth ) override;
 
     /// @copydoc GAL::DeleteGroup()
-    virtual void DeleteGroup( int aGroupNumber );
+    virtual void DeleteGroup( int aGroupNumber ) override;
 
     /// @copydoc GAL::ClearCache()
-    virtual void ClearCache();
+    virtual void ClearCache() override;
 
     // --------------------------------------------------------
     // Handling the world <-> screen transformation
     // --------------------------------------------------------
 
     /// @copydoc GAL::SaveScreen()
-    virtual void SaveScreen();
+    virtual void SaveScreen() override;
 
     /// @copydoc GAL::RestoreScreen()
-    virtual void RestoreScreen();
+    virtual void RestoreScreen() override;
 
     /// @copydoc GAL::SetTarget()
-    virtual void SetTarget( RENDER_TARGET aTarget );
+    virtual void SetTarget( RENDER_TARGET aTarget ) override;
 
     /// @copydoc GAL::GetTarget()
-    virtual RENDER_TARGET GetTarget() const;
+    virtual RENDER_TARGET GetTarget() const override;
 
     /// @copydoc GAL::ClearTarget()
-    virtual void ClearTarget( RENDER_TARGET aTarget );
+    virtual void ClearTarget( RENDER_TARGET aTarget ) override;
 
     // -------
     // Cursor
     // -------
 
     /// @copydoc GAL::SetCursorSize()
-    virtual void SetCursorSize( unsigned int aCursorSize );
+    virtual void SetCursorSize( unsigned int aCursorSize ) override;
 
     /// @copydoc GAL::DrawCursor()
-    virtual void DrawCursor( const VECTOR2D& aCursorPosition );
+    virtual void DrawCursor( const VECTOR2D& aCursorPosition ) override;
 
     /**
      * Function PostPaint
@@ -260,7 +260,7 @@ public:
     }
 
 protected:
-    virtual void drawGridLine( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint );
+    virtual void drawGridLine( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint ) override;
 
 private:
     /// Super class definition
diff --git a/include/gal/opengl/cached_container.h b/include/gal/opengl/cached_container.h
index e4547ce..fc77d73 100644
--- a/include/gal/opengl/cached_container.h
+++ b/include/gal/opengl/cached_container.h
@@ -50,19 +50,19 @@ public:
     CACHED_CONTAINER( unsigned int aSize = defaultInitSize );
 
     ///> @copydoc VERTEX_CONTAINER::SetItem()
-    virtual void SetItem( VERTEX_ITEM* aItem );
+    virtual void SetItem( VERTEX_ITEM* aItem ) override;
 
     ///> @copydoc VERTEX_CONTAINER::FinishItem()
-    virtual void FinishItem();
+    virtual void FinishItem() override;
 
     ///> @copydoc VERTEX_CONTAINER::Allocate()
-    virtual VERTEX* Allocate( unsigned int aSize );
+    virtual VERTEX* Allocate( unsigned int aSize ) override;
 
     ///> @copydoc VERTEX_CONTAINER::Delete()
-    virtual void Delete( VERTEX_ITEM* aItem );
+    virtual void Delete( VERTEX_ITEM* aItem ) override;
 
     ///> @copydoc VERTEX_CONTAINER::Clear()
-    virtual void Clear();
+    virtual void Clear() override;
 
     /**
      * Function GetVertices()
diff --git a/include/gal/opengl/gpu_manager.h b/include/gal/opengl/gpu_manager.h
index 870834f..50633e8 100644
--- a/include/gal/opengl/gpu_manager.h
+++ b/include/gal/opengl/gpu_manager.h
@@ -110,19 +110,19 @@ public:
     ~GPU_CACHED_MANAGER();
 
     ///> @copydoc GPU_MANAGER::Initialize()
-    virtual void Initialize();
+    virtual void Initialize() override;
 
     ///> @copydoc GPU_MANAGER::BeginDrawing()
-    virtual void BeginDrawing();
+    virtual void BeginDrawing() override;
 
     ///> @copydoc GPU_MANAGER::DrawIndices()
-    virtual void DrawIndices( unsigned int aOffset, unsigned int aSize );
+    virtual void DrawIndices( unsigned int aOffset, unsigned int aSize ) override;
 
     ///> @copydoc GPU_MANAGER::DrawAll()
-    virtual void DrawAll();
+    virtual void DrawAll() override;
 
     ///> @copydoc GPU_MANAGER::EndDrawing()
-    virtual void EndDrawing();
+    virtual void EndDrawing() override;
 
     /**
      * Function uploadToGpu
@@ -158,19 +158,19 @@ public:
     GPU_NONCACHED_MANAGER( VERTEX_CONTAINER* aContainer );
 
     ///> @copydoc GPU_MANAGER::Initialize()
-    virtual void Initialize();
+    virtual void Initialize() override;
 
     ///> @copydoc GPU_MANAGER::BeginDrawing()
-    virtual void BeginDrawing();
+    virtual void BeginDrawing() override;
 
     ///> @copydoc GPU_MANAGER::DrawIndices()
-    virtual void DrawIndices( unsigned int aOffset, unsigned int aSize );
+    virtual void DrawIndices( unsigned int aOffset, unsigned int aSize ) override;
 
     ///> @copydoc GPU_MANAGER::DrawAll()
-    virtual void DrawAll();
+    virtual void DrawAll() override;
 
     ///> @copydoc GPU_MANAGER::EndDrawing()
-    virtual void EndDrawing();
+    virtual void EndDrawing() override;
 };
 } // namespace KIGFX
 #endif /* GPU_MANAGER_H_ */
diff --git a/include/gal/opengl/noncached_container.h b/include/gal/opengl/noncached_container.h
index 151200b..a765df1 100644
--- a/include/gal/opengl/noncached_container.h
+++ b/include/gal/opengl/noncached_container.h
@@ -45,19 +45,19 @@ public:
     virtual ~NONCACHED_CONTAINER();
 
     ///< @copydoc VERTEX_CONTAINER::SetItem( VERTEX_ITEM* aItem )
-    virtual void SetItem( VERTEX_ITEM* aItem );
+    virtual void SetItem( VERTEX_ITEM* aItem ) override;
 
     ///< @copydoc VERTEX_CONTAINER::Allocate( unsigned int aSize )
-    virtual VERTEX* Allocate( unsigned int aSize );
+    virtual VERTEX* Allocate( unsigned int aSize ) override;
 
     ///< @copydoc VERTEX_CONTAINER::Delete( VERTEX_ITEM* aItem )
-    virtual void Delete( VERTEX_ITEM* aItem ) {};
+    virtual void Delete( VERTEX_ITEM* aItem ) override {};
 
     ///< @copydoc VERTEX_CONTAINER::Clear()
-    virtual void Clear();
+    virtual void Clear() override;
 
     ///< @copydoc VERTEX_CONTAINER::GetSize()
-    virtual inline unsigned int GetSize() const
+    virtual inline unsigned int GetSize() const override
     {
         // As the m_freePtr points to the first free space, we can safely assume
         // that this is the number of vertices stored inside
diff --git a/include/gal/opengl/opengl_compositor.h b/include/gal/opengl/opengl_compositor.h
index c06add7..1e14922 100644
--- a/include/gal/opengl/opengl_compositor.h
+++ b/include/gal/opengl/opengl_compositor.h
@@ -44,19 +44,19 @@ public:
     virtual ~OPENGL_COMPOSITOR();
 
     /// @copydoc COMPOSITOR::Initialize()
-    virtual void Initialize();
+    virtual void Initialize() override;
 
     /// @copydoc COMPOSITOR::Resize()
-    virtual void Resize( unsigned int aWidth, unsigned int aHeight );
+    virtual void Resize( unsigned int aWidth, unsigned int aHeight ) override;
 
     /// @copydoc COMPOSITOR::CreateBuffer()
-    virtual unsigned int CreateBuffer();
+    virtual unsigned int CreateBuffer() override;
 
     /// @copydoc COMPOSITOR::SetBuffer()
-    virtual void SetBuffer( unsigned int aBufferHandle );
+    virtual void SetBuffer( unsigned int aBufferHandle ) override;
 
     /// @copydoc COMPOSITOR::GetBuffer()
-    inline virtual unsigned int GetBuffer() const
+    inline virtual unsigned int GetBuffer() const override
     {
         if( m_currentFbo == DIRECT_RENDERING )
             return DIRECT_RENDERING;
@@ -65,10 +65,10 @@ public:
     }
 
     /// @copydoc COMPOSITOR::ClearBuffer()
-    virtual void ClearBuffer();
+    virtual void ClearBuffer() override;
 
     /// @copydoc COMPOSITOR::DrawBuffer()
-    virtual void DrawBuffer( unsigned int aBufferHandle );
+    virtual void DrawBuffer( unsigned int aBufferHandle ) override;
 
     // Constant used by glBindFramebuffer to turn off rendering to framebuffers
     static const unsigned int DIRECT_RENDERING = 0;
diff --git a/include/gal/opengl/opengl_gal.h b/include/gal/opengl/opengl_gal.h
index ff618b9..b9c76b5 100644
--- a/include/gal/opengl/opengl_gal.h
+++ b/include/gal/opengl/opengl_gal.h
@@ -87,126 +87,126 @@ public:
     // ---------------
 
     /// @copydoc GAL::BeginDrawing()
-    virtual void BeginDrawing();
+    virtual void BeginDrawing() override;
 
     /// @copydoc GAL::EndDrawing()
-    virtual void EndDrawing();
+    virtual void EndDrawing() override;
 
     /// @copydoc GAL::DrawLine()
-    virtual void DrawLine( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint );
+    virtual void DrawLine( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint ) override;
 
     /// @copydoc GAL::DrawSegment()
     virtual void DrawSegment( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint,
-                              double aWidth );
+                              double aWidth ) override;
 
     /// @copydoc GAL::DrawCircle()
-    virtual void DrawCircle( const VECTOR2D& aCenterPoint, double aRadius );
+    virtual void DrawCircle( const VECTOR2D& aCenterPoint, double aRadius ) override;
 
     /// @copydoc GAL::DrawArc()
     virtual void DrawArc( const VECTOR2D& aCenterPoint, double aRadius,
-                          double aStartAngle, double aEndAngle );
+                          double aStartAngle, double aEndAngle ) override;
 
     /// @copydoc GAL::DrawRectangle()
-    virtual void DrawRectangle( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint );
+    virtual void DrawRectangle( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint ) override;
 
     /// @copydoc GAL::DrawPolyline()
-    virtual void DrawPolyline( std::deque<VECTOR2D>& aPointList );
+    virtual void DrawPolyline( std::deque<VECTOR2D>& aPointList ) override;
 
     /// @copydoc GAL::DrawPolygon()
-    virtual void DrawPolygon( const std::deque<VECTOR2D>& aPointList );
+    virtual void DrawPolygon( const std::deque<VECTOR2D>& aPointList ) override;
 
     /// @copydoc GAL::DrawCurve()
     virtual void DrawCurve( const VECTOR2D& startPoint, const VECTOR2D& controlPointA,
-                            const VECTOR2D& controlPointB, const VECTOR2D& endPoint );
+                            const VECTOR2D& controlPointB, const VECTOR2D& endPoint ) override;
 
     // --------------
     // Screen methods
     // --------------
 
     /// @brief Resizes the canvas.
-    virtual void ResizeScreen( int aWidth, int aHeight );
+    virtual void ResizeScreen( int aWidth, int aHeight ) override;
 
     /// @brief Shows/hides the GAL canvas
-    virtual bool Show( bool aShow );
+    virtual bool Show( bool aShow ) override;
 
     /// @copydoc GAL::Flush()
-    virtual void Flush();
+    virtual void Flush() override;
 
     /// @copydoc GAL::ClearScreen()
-    virtual void ClearScreen( const COLOR4D& aColor );
+    virtual void ClearScreen( const COLOR4D& aColor ) override;
 
     // --------------
     // Transformation
     // --------------
 
     /// @copydoc GAL::Transform()
-    virtual void Transform( const MATRIX3x3D& aTransformation );
+    virtual void Transform( const MATRIX3x3D& aTransformation ) override;
 
     /// @copydoc GAL::Rotate()
-    virtual void Rotate( double aAngle );
+    virtual void Rotate( double aAngle ) override;
 
     /// @copydoc GAL::Translate()
-    virtual void Translate( const VECTOR2D& aTranslation );
+    virtual void Translate( const VECTOR2D& aTranslation ) override;
 
     /// @copydoc GAL::Scale()
-    virtual void Scale( const VECTOR2D& aScale );
+    virtual void Scale( const VECTOR2D& aScale ) override;
 
     /// @copydoc GAL::Save()
-    virtual void Save();
+    virtual void Save() override;
 
     /// @copydoc GAL::Restore()
-    virtual void Restore();
+    virtual void Restore() override;
 
     // --------------------------------------------
     // Group methods
     // ---------------------------------------------
 
     /// @copydoc GAL::BeginGroup()
-    virtual int BeginGroup();
+    virtual int BeginGroup() override;
 
     /// @copydoc GAL::EndGroup()
-    virtual void EndGroup();
+    virtual void EndGroup() override;
 
     /// @copydoc GAL::DrawGroup()
-    virtual void DrawGroup( int aGroupNumber );
+    virtual void DrawGroup( int aGroupNumber ) override;
 
     /// @copydoc GAL::ChangeGroupColor()
-    virtual void ChangeGroupColor( int aGroupNumber, const COLOR4D& aNewColor );
+    virtual void ChangeGroupColor( int aGroupNumber, const COLOR4D& aNewColor ) override;
 
     /// @copydoc GAL::ChangeGroupDepth()
-    virtual void ChangeGroupDepth( int aGroupNumber, int aDepth );
+    virtual void ChangeGroupDepth( int aGroupNumber, int aDepth ) override;
 
     /// @copydoc GAL::DeleteGroup()
-    virtual void DeleteGroup( int aGroupNumber );
+    virtual void DeleteGroup( int aGroupNumber ) override;
 
     /// @copydoc GAL::ClearCache()
-    virtual void ClearCache();
+    virtual void ClearCache() override;
 
     // --------------------------------------------------------
     // Handling the world <-> screen transformation
     // --------------------------------------------------------
 
     /// @copydoc GAL::SaveScreen()
-    virtual void SaveScreen();
+    virtual void SaveScreen() override;
 
     /// @copydoc GAL::RestoreScreen()
-    virtual void RestoreScreen();
+    virtual void RestoreScreen() override;
 
     /// @copydoc GAL::SetTarget()
-    virtual void SetTarget( RENDER_TARGET aTarget );
+    virtual void SetTarget( RENDER_TARGET aTarget ) override;
 
     /// @copydoc GAL::GetTarget()
-    virtual RENDER_TARGET GetTarget() const;
+    virtual RENDER_TARGET GetTarget() const override;
 
     /// @copydoc GAL::ClearTarget()
-    virtual void ClearTarget( RENDER_TARGET aTarget );
+    virtual void ClearTarget( RENDER_TARGET aTarget ) override;
 
     // -------
     // Cursor
     // -------
 
     /// @copydoc GAL::DrawCursor()
-    virtual void DrawCursor( const VECTOR2D& aCursorPosition );
+    virtual void DrawCursor( const VECTOR2D& aCursorPosition ) override;
 
     /**
      * @brief Function PostPaint
@@ -243,7 +243,7 @@ public:
     } TessParams;
 
 protected:
-    virtual void drawGridLine( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint );
+    virtual void drawGridLine( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint ) override;
 
 private:
     /// Super class definition
diff --git a/include/geometry/shape_circle.h b/include/geometry/shape_circle.h
index 2c9a800..e7ad684 100644
--- a/include/geometry/shape_circle.h
+++ b/include/geometry/shape_circle.h
@@ -47,19 +47,19 @@ public:
     ~SHAPE_CIRCLE()
     {}
 
-    virtual SHAPE* Clone() const
+    virtual SHAPE* Clone() const override
     {
         return new SHAPE_CIRCLE( *this );
     }
 
-    virtual const BOX2I BBox( int aClearance = 0 ) const
+    virtual const BOX2I BBox( int aClearance = 0 ) const override
     {
         const VECTOR2I rc( m_radius + aClearance, m_radius + aClearance );
 
         return BOX2I( m_center - rc, rc * 2 );
     }
 
-    virtual bool Collide( const SEG& aSeg, int aClearance = 0 ) const
+    virtual bool Collide( const SEG& aSeg, int aClearance = 0 ) const override
     {
         int rc = aClearance + m_radius;
 
@@ -86,12 +86,12 @@ public:
         return m_center;
     }
 
-    virtual void Move( const VECTOR2I& aVector )
+    virtual void Move( const VECTOR2I& aVector ) override
     {
         m_center += aVector;
     }
 
-    virtual bool IsSolid() const
+    virtual bool IsSolid() const override
     {
         return true;
     }
diff --git a/include/geometry/shape_line_chain.h b/include/geometry/shape_line_chain.h
index 896b08f..4df028c 100644
--- a/include/geometry/shape_line_chain.h
+++ b/include/geometry/shape_line_chain.h
@@ -127,7 +127,7 @@ public:
     ~SHAPE_LINE_CHAIN()
     {}
 
-    virtual SHAPE* Clone() const;
+    virtual SHAPE* Clone() const override;
 
     /**
      * Function Clear()
@@ -259,7 +259,7 @@ public:
     }
 
     /// @copydoc SHAPE::BBox()
-    virtual const BOX2I BBox( int aClearance = 0 ) const
+    virtual const BOX2I BBox( int aClearance = 0 ) const override
     {
         BOX2I bbox;
         bbox.Compute( m_points );
@@ -275,7 +275,7 @@ public:
      * @param aClearance minimum distance that does not qualify as a collision.
      * @return true, when a collision has been found
      */
-    virtual bool Collide( const VECTOR2I& aP, int aClearance = 0 ) const;
+    virtual bool Collide( const VECTOR2I& aP, int aClearance = 0 ) const override;
 
     /**
      * Function Collide()
@@ -295,7 +295,7 @@ public:
      * @param aClearance minimum distance that does not qualify as a collision.
      * @return true, when a collision has been found
      */
-    virtual bool Collide( const SEG& aSeg, int aClearance = 0 ) const;
+    virtual bool Collide( const SEG& aSeg, int aClearance = 0 ) const override;
 
     /**
      * Function Distance()
@@ -564,13 +564,13 @@ public:
 
     bool CompareGeometry( const SHAPE_LINE_CHAIN & aOther ) const;
 
-    virtual void Move( const VECTOR2I& aVector )
+    virtual void Move( const VECTOR2I& aVector ) override
     {
         for( std::vector<VECTOR2I>::iterator i = m_points.begin(); i != m_points.end(); ++i )
             (*i) += aVector;
     }
 
-    virtual bool IsSolid() const
+    virtual bool IsSolid() const override
     {
         return false;
     }
diff --git a/include/geometry/shape_rect.h b/include/geometry/shape_rect.h
index 7ca6722..dc9b569 100644
--- a/include/geometry/shape_rect.h
+++ b/include/geometry/shape_rect.h
@@ -64,13 +64,13 @@ public:
         m_h( aOther.m_h )
     {};
 
-    virtual SHAPE* Clone() const
+    virtual SHAPE* Clone() const override
     {
         return new SHAPE_RECT( *this );
     }
 
     /// @copydoc SHAPE::BBox()
-    virtual const BOX2I BBox( int aClearance = 0 ) const
+    virtual const BOX2I BBox( int aClearance = 0 ) const override
     {
         BOX2I bbox( VECTOR2I( m_p0.x - aClearance,  m_p0.y - aClearance ),
                     VECTOR2I( m_w + 2 * aClearance, m_h + 2 * aClearance ) );
@@ -90,7 +90,7 @@ public:
     }
 
     /// @copydoc SHAPE::Collide()
-    virtual bool Collide( const SEG& aSeg, int aClearance = 0 ) const
+    virtual bool Collide( const SEG& aSeg, int aClearance = 0 ) const override
     {
         //VECTOR2I pmin = VECTOR2I( std::min( aSeg.a.x, aSeg.b.x ), std::min( aSeg.a.y, aSeg.b.y ) );
         //VECTOR2I pmax = VECTOR2I( std::max( aSeg.a.x, aSeg.b.x ), std::max( aSeg.a.y, aSeg.b.y ));
@@ -159,12 +159,12 @@ public:
         return m_h;
     }
 
-    virtual void Move( const VECTOR2I& aVector )
+    virtual void Move( const VECTOR2I& aVector ) override
     {
         m_p0 += aVector;
     }
 
-    virtual bool IsSolid() const
+    virtual bool IsSolid() const override
     {
         return true;
     }
diff --git a/include/geometry/shape_segment.h b/include/geometry/shape_segment.h
index d28b1b7..f8a961b 100644
--- a/include/geometry/shape_segment.h
+++ b/include/geometry/shape_segment.h
@@ -42,22 +42,22 @@ public:
 
     ~SHAPE_SEGMENT() {};
 
-    virtual SHAPE* Clone() const
+    virtual SHAPE* Clone() const override
     {
         return new SHAPE_SEGMENT( m_seg, m_width );
     }
 
-    virtual const BOX2I BBox( int aClearance = 0 ) const
+    virtual const BOX2I BBox( int aClearance = 0 ) const override
     {
         return BOX2I( m_seg.A, m_seg.B - m_seg.A ).Inflate( aClearance + m_width / 2 );
     }
 
-    virtual bool Collide( const SEG& aSeg, int aClearance = 0 ) const
+    virtual bool Collide( const SEG& aSeg, int aClearance = 0 ) const override
     {
         return m_seg.Distance( aSeg ) <= m_width / 2 + aClearance;
     }
 
-    virtual bool Collide( const VECTOR2I& aP, int aClearance = 0 ) const
+    virtual bool Collide( const VECTOR2I& aP, int aClearance = 0 ) const override
     {
         return m_seg.Distance( aP ) <= m_width / 2 + aClearance;
     }
@@ -82,12 +82,12 @@ public:
         return m_width;
     }
 
-    virtual bool IsSolid() const
+    virtual bool IsSolid() const override
     {
         return true;
     }
 
-    virtual void Move( const VECTOR2I& aVector )
+    virtual void Move( const VECTOR2I& aVector ) override
     {
         m_seg.A += aVector;
         m_seg.B += aVector;
diff --git a/include/html_messagebox.h b/include/html_messagebox.h
index df5e894..e0c5771 100644
--- a/include/html_messagebox.h
+++ b/include/html_messagebox.h
@@ -41,7 +41,7 @@ class HTML_MESSAGE_BOX : public DIALOG_DISPLAY_HTML_TEXT_BASE
 {
 protected:
     // Handlers for HTML_MESSAGE_BOX_BASE events.
-    virtual void OnCloseButtonClick( wxCommandEvent& event );
+    virtual void OnCloseButtonClick( wxCommandEvent& event ) override;
 
 public:
     /**
diff --git a/include/kiface_i.h b/include/kiface_i.h
index 23f0535..54111fc 100644
--- a/include/kiface_i.h
+++ b/include/kiface_i.h
@@ -43,7 +43,7 @@ public:
 
         // see base class KIFACE in kiway.h for doxygen docs
 
-    VTBL_ENTRY bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits ) = 0;
+    VTBL_ENTRY bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits ) override = 0;
     /*
     {
         typically call start_common() in your overload
@@ -51,16 +51,16 @@ public:
     }
     */
 
-    VTBL_ENTRY void OnKifaceEnd()
+    VTBL_ENTRY void OnKifaceEnd() override
     {
         // overload this if you want, end_common() may be handy.
         end_common();
     }
 
     VTBL_ENTRY  wxWindow* CreateWindow( wxWindow* aParent,
-            int aClassId, KIWAY* aKIWAY, int aCtlBits = 0 ) = 0;
+            int aClassId, KIWAY* aKIWAY, int aCtlBits = 0 ) override = 0;
 
-    VTBL_ENTRY void* IfaceOrAddress( int aDataId ) = 0;
+    VTBL_ENTRY void* IfaceOrAddress( int aDataId ) override = 0;
 
     //-----</KIFACE API>---------------------------------------------------------
 
diff --git a/include/kiway.h b/include/kiway.h
index 487e3f6..28e8505 100644
--- a/include/kiway.h
+++ b/include/kiway.h
@@ -360,7 +360,7 @@ public:
 
     void OnKiwayEnd();
 
-    virtual bool ProcessEvent( wxEvent& aEvent );
+    virtual bool ProcessEvent( wxEvent& aEvent ) override;
 
 private:
 
diff --git a/include/kiway_express.h b/include/kiway_express.h
index fd68ae0..5401ce1 100644
--- a/include/kiway_express.h
+++ b/include/kiway_express.h
@@ -61,7 +61,7 @@ public:
     const std::string&  GetPayload()                    { return m_payload; }
     void SetPayload( const std::string& aPayload )      { m_payload = aPayload; }
 
-    virtual KIWAY_EXPRESS* Clone() const                { return new KIWAY_EXPRESS( *this ); }
+    virtual KIWAY_EXPRESS* Clone() const override       { return new KIWAY_EXPRESS( *this ); }
 
     //KIWAY_EXPRESS() {}
 
diff --git a/include/kiway_player.h b/include/kiway_player.h
index c798098..041a512 100644
--- a/include/kiway_player.h
+++ b/include/kiway_player.h
@@ -208,7 +208,7 @@ public:
     /**
      * Our version of Destroy() which is virtual from wxWidgets
      */
-    virtual bool Destroy();
+    virtual bool Destroy() override;
 
 protected:
 
diff --git a/include/plot_common.h b/include/plot_common.h
index 37ef0e5..1b4fba2 100644
--- a/include/plot_common.h
+++ b/include/plot_common.h
@@ -444,7 +444,7 @@ class HPGL_PLOTTER : public PLOTTER
 public:
     HPGL_PLOTTER();
 
-    virtual PlotFormat GetPlotterType() const
+    virtual PlotFormat GetPlotterType() const override
     {
         return PLOT_FORMAT_HPGL;
     }
@@ -454,20 +454,20 @@ public:
         return wxString( wxT( "plt" ) );
     }
 
-    virtual bool StartPlot();
-    virtual bool EndPlot();
+    virtual bool StartPlot() override;
+    virtual bool EndPlot() override;
 
     /// HPGL doesn't handle line thickness or color
-    virtual void SetCurrentLineWidth( int width )
+    virtual void SetCurrentLineWidth( int width ) override
     {
         // This is the truth
         currentPenWidth = userToDeviceSize( penDiameter );
     }
 
-    virtual void SetDefaultLineWidth( int width ) {};
-    virtual void SetDash( bool dashed );
+    virtual void SetDefaultLineWidth( int width ) override {};
+    virtual void SetDash( bool dashed ) override;
 
-    virtual void SetColor( EDA_COLOR_T color ) {};
+    virtual void SetColor( EDA_COLOR_T color ) override {};
 
     virtual void SetPenSpeed( int speed )
     {
@@ -490,27 +490,27 @@ public:
     }
 
     virtual void SetViewport( const wxPoint& aOffset, double aIusPerDecimil,
-                  double aScale, bool aMirror );
+                  double aScale, bool aMirror ) override;
     virtual void Rect( const wxPoint& p1, const wxPoint& p2, FILL_T fill,
-               int width = DEFAULT_LINE_WIDTH );
+               int width = DEFAULT_LINE_WIDTH ) override;
     virtual void Circle( const wxPoint& pos, int diametre, FILL_T fill,
-                         int width = DEFAULT_LINE_WIDTH );
+                         int width = DEFAULT_LINE_WIDTH ) override;
     virtual void PlotPoly( const std::vector< wxPoint >& aCornerList,
-                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH);
+                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH) override;
 
     virtual void ThickSegment( const wxPoint& start, const wxPoint& end, int width,
-                               EDA_DRAW_MODE_T tracemode );
+                               EDA_DRAW_MODE_T tracemode ) override;
     virtual void Arc( const wxPoint& centre, double StAngle, double EndAngle,
-                      int rayon, FILL_T fill, int width = DEFAULT_LINE_WIDTH );
-    virtual void PenTo( const wxPoint& pos, char plume );
+                      int rayon, FILL_T fill, int width = DEFAULT_LINE_WIDTH ) override;
+    virtual void PenTo( const wxPoint& pos, char plume ) override;
     virtual void FlashPadCircle( const wxPoint& pos, int diametre,
-                                 EDA_DRAW_MODE_T trace_mode );
+                                 EDA_DRAW_MODE_T trace_mode ) override;
     virtual void FlashPadOval( const wxPoint& pos, const wxSize& size, double orient,
-                               EDA_DRAW_MODE_T trace_mode );
+                               EDA_DRAW_MODE_T trace_mode ) override;
     virtual void FlashPadRect( const wxPoint& pos, const wxSize& size,
-                               double orient, EDA_DRAW_MODE_T trace_mode );
+                               double orient, EDA_DRAW_MODE_T trace_mode ) override;
     virtual void FlashPadTrapez( const wxPoint& aPadPos, const wxPoint *aCorners,
-                                 double aPadOrient, EDA_DRAW_MODE_T aTrace_Mode );
+                                 double aPadOrient, EDA_DRAW_MODE_T aTrace_Mode ) override;
 
 protected:
     void penControl( char plume );
@@ -537,13 +537,13 @@ public:
     /**
      * PS and PDF fully implement native text (for the Latin-1 subset)
      */
-    virtual void SetTextMode( PlotTextMode mode )
+    virtual void SetTextMode( PlotTextMode mode ) override
     {
         if( mode != PLOTTEXTMODE_DEFAULT )
             m_textMode = mode;
     }
 
-    virtual void SetDefaultLineWidth( int width );
+    virtual void SetDefaultLineWidth( int width ) override;
 
     /**
      * Set the 'fine' scaling for the postscript engine
@@ -556,19 +556,19 @@ public:
 
     // Pad routines are handled with lower level primitives
     virtual void FlashPadCircle( const wxPoint& pos, int diametre,
-                                 EDA_DRAW_MODE_T trace_mode );
+                                 EDA_DRAW_MODE_T trace_mode ) override;
     virtual void FlashPadOval( const wxPoint& pos, const wxSize& size, double orient,
-                               EDA_DRAW_MODE_T trace_mode );
+                               EDA_DRAW_MODE_T trace_mode ) override;
     virtual void FlashPadRect( const wxPoint& pos, const wxSize& size,
-                               double orient, EDA_DRAW_MODE_T trace_mode );
+                               double orient, EDA_DRAW_MODE_T trace_mode ) override;
     virtual void FlashPadTrapez( const wxPoint& aPadPos, const wxPoint *aCorners,
-                                 double aPadOrient, EDA_DRAW_MODE_T aTrace_Mode );
+                                 double aPadOrient, EDA_DRAW_MODE_T aTrace_Mode ) override;
 
     /** The SetColor implementation is split with the subclasses:
      * The PSLIKE computes the rgb values, the subclass emits the
      * operator to actually do it
      */
-    virtual void SetColor( EDA_COLOR_T color );
+    virtual void SetColor( EDA_COLOR_T color ) override;
 
 protected:
     void computeTextParameters( const wxPoint&           aPos,
@@ -625,32 +625,32 @@ public:
         return wxString( wxT( "ps" ) );
     }
 
-    virtual PlotFormat GetPlotterType() const
+    virtual PlotFormat GetPlotterType() const override
     {
         return PLOT_FORMAT_POST;
     }
 
-    virtual bool StartPlot();
-    virtual bool EndPlot();
-    virtual void SetCurrentLineWidth( int width );
-    virtual void SetDash( bool dashed );
+    virtual bool StartPlot() override;
+    virtual bool EndPlot() override;
+    virtual void SetCurrentLineWidth( int width ) override;
+    virtual void SetDash( bool dashed ) override;
 
     virtual void SetViewport( const wxPoint& aOffset, double aIusPerDecimil,
-                  double aScale, bool aMirror );
+                  double aScale, bool aMirror ) override;
     virtual void Rect( const wxPoint& p1, const wxPoint& p2, FILL_T fill,
-                       int width = DEFAULT_LINE_WIDTH );
+                       int width = DEFAULT_LINE_WIDTH ) override;
     virtual void Circle( const wxPoint& pos, int diametre, FILL_T fill,
-                         int width = DEFAULT_LINE_WIDTH );
+                         int width = DEFAULT_LINE_WIDTH ) override;
     virtual void Arc( const wxPoint& centre, double StAngle, double EndAngle,
-                      int rayon, FILL_T fill, int width = DEFAULT_LINE_WIDTH );
+                      int rayon, FILL_T fill, int width = DEFAULT_LINE_WIDTH ) override;
 
     virtual void PlotPoly( const std::vector< wxPoint >& aCornerList,
-                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH );
+                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH ) override;
 
     virtual void PlotImage( const wxImage& aImage, const wxPoint& aPos,
-                            double aScaleFactor );
+                            double aScaleFactor ) override;
 
-    virtual void PenTo( const wxPoint& pos, char plume );
+    virtual void PenTo( const wxPoint& pos, char plume ) override;
     virtual void Text( const wxPoint&              aPos,
                        enum EDA_COLOR_T            aColor,
                        const wxString&             aText,
@@ -661,9 +661,9 @@ public:
                        int                         aWidth,
                        bool                        aItalic,
                        bool                        aBold,
-                       bool                        aMultilineAllowed = false );
+                       bool                        aMultilineAllowed = false ) override;
 protected:
-    virtual void emitSetRGBColor( double r, double g, double b );
+    virtual void emitSetRGBColor( double r, double g, double b ) override;
 };
 
 class PDF_PLOTTER : public PSLIKE_PLOTTER
@@ -675,7 +675,7 @@ public:
         pageStreamHandle = streamLengthHandle = fontResDictHandle = 0;
     }
 
-    virtual PlotFormat GetPlotterType() const
+    virtual PlotFormat GetPlotterType() const override
     {
         return PLOT_FORMAT_PDF;
     }
@@ -693,31 +693,31 @@ public:
      * The base class open the file in text mode, so we should have this
      * function overlaid for PDF files, which are binary files
      */
-    virtual bool OpenFile( const wxString& aFullFilename );
+    virtual bool OpenFile( const wxString& aFullFilename ) override;
 
-    virtual bool StartPlot();
-    virtual bool EndPlot();
+    virtual bool StartPlot() override;
+    virtual bool EndPlot() override;
     virtual void StartPage();
     virtual void ClosePage();
-    virtual void SetCurrentLineWidth( int width );
-    virtual void SetDash( bool dashed );
+    virtual void SetCurrentLineWidth( int width ) override;
+    virtual void SetDash( bool dashed ) override;
 
     /** PDF can have multiple pages, so SetPageSettings can be called
      * with the outputFile open (but not inside a page stream!) */
-    virtual void SetPageSettings( const PAGE_INFO& aPageSettings );
+    virtual void SetPageSettings( const PAGE_INFO& aPageSettings ) override;
     virtual void SetViewport( const wxPoint& aOffset, double aIusPerDecimil,
-                  double aScale, bool aMirror );
+                  double aScale, bool aMirror ) override;
     virtual void Rect( const wxPoint& p1, const wxPoint& p2, FILL_T fill,
-                       int width = DEFAULT_LINE_WIDTH );
+                       int width = DEFAULT_LINE_WIDTH ) override;
     virtual void Circle( const wxPoint& pos, int diametre, FILL_T fill,
-                         int width = DEFAULT_LINE_WIDTH );
+                         int width = DEFAULT_LINE_WIDTH ) override;
     virtual void Arc( const wxPoint& centre, double StAngle, double EndAngle,
-                      int rayon, FILL_T fill, int width = DEFAULT_LINE_WIDTH );
+                      int rayon, FILL_T fill, int width = DEFAULT_LINE_WIDTH ) override;
 
     virtual void PlotPoly( const std::vector< wxPoint >& aCornerList,
-                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH);
+                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH) override;
 
-    virtual void PenTo( const wxPoint& pos, char plume );
+    virtual void PenTo( const wxPoint& pos, char plume ) override;
 
     virtual void Text( const wxPoint&              aPos,
                        enum EDA_COLOR_T            aColor,
@@ -729,14 +729,14 @@ public:
                        int                         aWidth,
                        bool                        aItalic,
                        bool                        aBold,
-                       bool                        aMultilineAllowed = false );
+                       bool                        aMultilineAllowed = false ) override;
 
     virtual void PlotImage( const wxImage& aImage, const wxPoint& aPos,
-                            double aScaleFactor );
+                            double aScaleFactor ) override;
 
 
 protected:
-    virtual void emitSetRGBColor( double r, double g, double b );
+    virtual void emitSetRGBColor( double r, double g, double b ) override;
     int allocPdfObject();
     int startPdfObject(int handle = -1);
     void closePdfObject();
@@ -762,33 +762,33 @@ public:
         return wxString( wxT( "svg" ) );
     }
 
-    virtual PlotFormat GetPlotterType() const
+    virtual PlotFormat GetPlotterType() const override
     {
         return PLOT_FORMAT_SVG;
     }
 
-    virtual void SetColor( EDA_COLOR_T color );
-    virtual bool StartPlot();
-    virtual bool EndPlot();
-    virtual void SetCurrentLineWidth( int width );
-    virtual void SetDash( bool dashed );
+    virtual void SetColor( EDA_COLOR_T color ) override;
+    virtual bool StartPlot() override;
+    virtual bool EndPlot() override;
+    virtual void SetCurrentLineWidth( int width ) override;
+    virtual void SetDash( bool dashed ) override;
 
     virtual void SetViewport( const wxPoint& aOffset, double aIusPerDecimil,
-                  double aScale, bool aMirror );
+                  double aScale, bool aMirror ) override;
     virtual void Rect( const wxPoint& p1, const wxPoint& p2, FILL_T fill,
-                       int width = DEFAULT_LINE_WIDTH );
+                       int width = DEFAULT_LINE_WIDTH ) override;
     virtual void Circle( const wxPoint& pos, int diametre, FILL_T fill,
-                         int width = DEFAULT_LINE_WIDTH );
+                         int width = DEFAULT_LINE_WIDTH ) override;
     virtual void Arc( const wxPoint& centre, double StAngle, double EndAngle,
-                      int rayon, FILL_T fill, int width = DEFAULT_LINE_WIDTH );
+                      int rayon, FILL_T fill, int width = DEFAULT_LINE_WIDTH ) override;
 
     virtual void PlotPoly( const std::vector< wxPoint >& aCornerList,
-                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH );
+                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH ) override;
 
     virtual void PlotImage( const wxImage& aImage, const wxPoint& aPos,
-                            double aScaleFactor );
+                            double aScaleFactor ) override;
 
-    virtual void PenTo( const wxPoint& pos, char plume );
+    virtual void PenTo( const wxPoint& pos, char plume ) override;
     virtual void Text( const wxPoint&              aPos,
                        enum EDA_COLOR_T            aColor,
                        const wxString&             aText,
@@ -799,7 +799,7 @@ public:
                        int                         aWidth,
                        bool                        aItalic,
                        bool                        aBold,
-                       bool                        aMultilineAllowed = false );
+                       bool                        aMultilineAllowed = false ) override;
 
 protected:
     FILL_T m_fillMode;              // true if the current contour
@@ -819,7 +819,7 @@ protected:
      * initialize m_pen_rgb_color from reduced values r, g ,b
      * ( reduced values are 0.0 to 1.0 )
      */
-    virtual void emitSetRGBColor( double r, double g, double b );
+    virtual void emitSetRGBColor( double r, double g, double b ) override;
 
     /**
      * function setSVGPlotStyle()
@@ -860,7 +860,7 @@ class GERBER_PLOTTER : public PLOTTER
 public:
     GERBER_PLOTTER();
 
-    virtual PlotFormat GetPlotterType() const
+    virtual PlotFormat GetPlotterType() const override
     {
         return PLOT_FORMAT_GERBER;
     }
@@ -875,65 +875,65 @@ public:
      * Write GERBER header to file
      * initialize global variable g_Plot_PlotOutputFile
      */
-    virtual bool StartPlot();
-    virtual bool EndPlot();
-    virtual void SetCurrentLineWidth( int width );
-    virtual void SetDefaultLineWidth( int width );
+    virtual bool StartPlot() override;
+    virtual bool EndPlot() override;
+    virtual void SetCurrentLineWidth( int width ) override;
+    virtual void SetDefaultLineWidth( int width ) override;
 
     // RS274X has no dashing, nor colours
-    virtual void SetDash( bool dashed ) {};
-    virtual void SetColor( EDA_COLOR_T color ) {};
+    virtual void SetDash( bool dashed ) override {};
+    virtual void SetColor( EDA_COLOR_T color ) override {};
     // Currently, aScale and aMirror are not used in gerber plotter
     virtual void SetViewport( const wxPoint& aOffset, double aIusPerDecimil,
-                          double aScale, bool aMirror );
+                          double aScale, bool aMirror ) override;
     virtual void Rect( const wxPoint& p1, const wxPoint& p2, FILL_T fill,
-                       int width = DEFAULT_LINE_WIDTH );
+                       int width = DEFAULT_LINE_WIDTH ) override;
     virtual void Circle( const wxPoint& pos, int diametre, FILL_T fill,
-                         int width = DEFAULT_LINE_WIDTH );
+                         int width = DEFAULT_LINE_WIDTH ) override;
     virtual void Arc( const wxPoint& aCenter, double aStAngle, double aEndAngle,
-                      int aRadius, FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH );
+                      int aRadius, FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH ) override;
 
     /**
      * Gerber polygon: they can (and *should*) be filled with the
      * appropriate G36/G37 sequence
      */
     virtual void PlotPoly( const std::vector< wxPoint >& aCornerList,
-                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH );
+                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH ) override;
 
-    virtual void PenTo( const wxPoint& pos, char plume );
+    virtual void PenTo( const wxPoint& pos, char plume ) override;
 
     /**
      * Filled circular flashes are stored as apertures
      */
     virtual void FlashPadCircle( const wxPoint& pos, int diametre,
-                                 EDA_DRAW_MODE_T trace_mode );
+                                 EDA_DRAW_MODE_T trace_mode ) override;
 
     /**
      * Filled oval flashes are handled as aperture in the 90 degree positions only
      */
     virtual void FlashPadOval( const wxPoint& pos, const wxSize& size, double orient,
-                               EDA_DRAW_MODE_T trace_mode );
+                               EDA_DRAW_MODE_T trace_mode ) override;
 
     /**
      * Filled rect flashes are handled as aperture in the 90 degree positions only
      */
     virtual void FlashPadRect( const wxPoint& pos, const wxSize& size,
-                               double orient, EDA_DRAW_MODE_T trace_mode );
+                               double orient, EDA_DRAW_MODE_T trace_mode ) override;
 
     /**
      * Trapezoidal pad at the moment are *never* handled as aperture, since
      * they require aperture macros
      */
     virtual void FlashPadTrapez( const wxPoint& aPadPos, const wxPoint *aCorners,
-                                 double aPadOrient, EDA_DRAW_MODE_T aTrace_Mode );
+                                 double aPadOrient, EDA_DRAW_MODE_T aTrace_Mode ) override;
 
     /**
      * Change the plot polarity and begin a new layer
      * Used to 'scratch off' silk screen away from solder mask
      */
-    virtual void SetLayerPolarity( bool aPositive );
+    virtual void SetLayerPolarity( bool aPositive ) override;
 
-    virtual void SetLayerAttribFunction( const wxString& function )
+    virtual void SetLayerAttribFunction( const wxString& function ) override
     {
         m_attribFunction = function;
     }
@@ -948,7 +948,7 @@ public:
      *
      * Should be called only after SetViewport() is called
      */
-    virtual void SetGerberCoordinatesFormat( int aResolution, bool aUseInches = false );
+    virtual void SetGerberCoordinatesFormat( int aResolution, bool aUseInches = false ) override;
 
 protected:
     void selectAperture( const wxSize& size, APERTURE::APERTURE_TYPE type );
@@ -992,7 +992,7 @@ public:
         m_currentColor = BLACK;
     }
 
-    virtual PlotFormat GetPlotterType() const
+    virtual PlotFormat GetPlotterType() const override
     {
         return PLOT_FORMAT_DXF;
     }
@@ -1005,52 +1005,52 @@ public:
     /**
      * DXF handles NATIVE text emitting TEXT entities
      */
-    virtual void SetTextMode( PlotTextMode mode )
+    virtual void SetTextMode( PlotTextMode mode ) override
     {
         if( mode != PLOTTEXTMODE_DEFAULT )
             textAsLines = ( mode != PLOTTEXTMODE_NATIVE );
     }
 
-    virtual bool StartPlot();
-    virtual bool EndPlot();
+    virtual bool StartPlot() override;
+    virtual bool EndPlot() override;
 
     // For now we don't use 'thick' primitives, so no line width
-    virtual void SetCurrentLineWidth( int width )
+    virtual void SetCurrentLineWidth( int width ) override
     {
         currentPenWidth = 0;
     }
 
-    virtual void SetDefaultLineWidth( int width )
+    virtual void SetDefaultLineWidth( int width ) override
     {
         // DXF lines are infinitesimal
         defaultPenWidth = 0;
     }
 
-    virtual void SetDash( bool dashed );
+    virtual void SetDash( bool dashed ) override;
 
-    virtual void SetColor( EDA_COLOR_T color );
+    virtual void SetColor( EDA_COLOR_T color ) override;
 
     virtual void SetViewport( const wxPoint& aOffset, double aIusPerDecimil,
-                  double aScale, bool aMirror );
+                  double aScale, bool aMirror ) override;
     virtual void Rect( const wxPoint& p1, const wxPoint& p2, FILL_T fill,
-                       int width = DEFAULT_LINE_WIDTH );
+                       int width = DEFAULT_LINE_WIDTH ) override;
     virtual void Circle( const wxPoint& pos, int diametre, FILL_T fill,
-                         int width = DEFAULT_LINE_WIDTH );
+                         int width = DEFAULT_LINE_WIDTH ) override;
     virtual void PlotPoly( const std::vector< wxPoint >& aCornerList,
-                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH );
+                           FILL_T aFill, int aWidth = DEFAULT_LINE_WIDTH ) override;
     virtual void ThickSegment( const wxPoint& start, const wxPoint& end, int width,
-                               EDA_DRAW_MODE_T tracemode );
+                               EDA_DRAW_MODE_T tracemode ) override;
     virtual void Arc( const wxPoint& centre, double StAngle, double EndAngle,
-                      int rayon, FILL_T fill, int width = DEFAULT_LINE_WIDTH );
-    virtual void PenTo( const wxPoint& pos, char plume );
+                      int rayon, FILL_T fill, int width = DEFAULT_LINE_WIDTH ) override;
+    virtual void PenTo( const wxPoint& pos, char plume ) override;
     virtual void FlashPadCircle( const wxPoint& pos, int diametre,
-                                 EDA_DRAW_MODE_T trace_mode );
+                                 EDA_DRAW_MODE_T trace_mode ) override;
     virtual void FlashPadOval( const wxPoint& pos, const wxSize& size, double orient,
-                               EDA_DRAW_MODE_T trace_mode );
+                               EDA_DRAW_MODE_T trace_mode ) override;
     virtual void FlashPadRect( const wxPoint& pos, const wxSize& size,
-                               double orient, EDA_DRAW_MODE_T trace_mode );
+                               double orient, EDA_DRAW_MODE_T trace_mode ) override;
     virtual void FlashPadTrapez( const wxPoint& aPadPos, const wxPoint *aCorners,
-                                 double aPadOrient, EDA_DRAW_MODE_T aTrace_Mode );
+                                 double aPadOrient, EDA_DRAW_MODE_T aTrace_Mode ) override;
 
     virtual void Text( const wxPoint&              aPos,
                        enum EDA_COLOR_T            aColor,
@@ -1062,7 +1062,7 @@ public:
                        int                         aWidth,
                        bool                        aItalic,
                        bool                        aBold,
-                       bool                        aMultilineAllowed = false );
+                       bool                        aMultilineAllowed = false ) override;
 
 protected:
     bool textAsLines;
diff --git a/include/reporter.h b/include/reporter.h
index 8ef45dc..06641f7 100644
--- a/include/reporter.h
+++ b/include/reporter.h
@@ -133,7 +133,7 @@ public:
         SetReportErrors( true );
     }
 
-    virtual REPORTER& Report( const wxString& aText );
+    virtual REPORTER& Report( const wxString& aText ) override;
 };
 
 
@@ -152,7 +152,7 @@ public:
     {
     }
 
-    virtual REPORTER& Report( const wxString& aText );
+    virtual REPORTER& Report( const wxString& aText ) override;
 };
 
 #endif     // _REPORTER_H_
diff --git a/include/richio.h b/include/richio.h
index 0d91a1b..87743f4 100644
--- a/include/richio.h
+++ b/include/richio.h
@@ -365,7 +365,7 @@ public:
      */
     ~FILE_LINE_READER();
 
-    virtual char* ReadLine() throw( IO_ERROR );   // see LINE_READER::ReadLine() description
+    virtual char* ReadLine() throw( IO_ERROR ) override;   // see LINE_READER::ReadLine() description
 
     /**
      * Function Rewind
@@ -412,7 +412,7 @@ public:
      */
     STRING_LINE_READER( const STRING_LINE_READER& aStartingPoint );
 
-    virtual char* ReadLine() throw( IO_ERROR );    // see LINE_READER::ReadLine() description
+    virtual char* ReadLine() throw( IO_ERROR ) override;    // see LINE_READER::ReadLine() description
 };
 
 
@@ -435,7 +435,7 @@ public:
      */
     INPUTSTREAM_LINE_READER( wxInputStream* aStream, const wxString& aSource );
 
-    virtual char* ReadLine() throw( IO_ERROR );    // see LINE_READER::ReadLine() description
+    virtual char* ReadLine() throw( IO_ERROR ) override;    // see LINE_READER::ReadLine() description
 };
 
 
@@ -612,7 +612,7 @@ public:
 
 protected:
     //-----<OUTPUTFORMATTER>------------------------------------------------
-    virtual void write( const char* aOutBuf, int aCount ) throw( IO_ERROR );
+    virtual void write( const char* aOutBuf, int aCount ) throw( IO_ERROR ) override;
     //-----</OUTPUTFORMATTER>-----------------------------------------------
 };
 
@@ -644,7 +644,7 @@ public:
 
 protected:
     //-----<OUTPUTFORMATTER>------------------------------------------------
-    virtual void write( const char* aOutBuf, int aCount ) throw( IO_ERROR );
+    virtual void write( const char* aOutBuf, int aCount ) throw( IO_ERROR ) override;
     //-----</OUTPUTFORMATTER>-----------------------------------------------
 
     FILE*       m_fp;               ///< takes ownership
@@ -675,7 +675,7 @@ public:
 
 protected:
     //-----<OUTPUTFORMATTER>------------------------------------------------
-    virtual void write( const char* aOutBuf, int aCount ) throw( IO_ERROR );
+    virtual void write( const char* aOutBuf, int aCount ) throw( IO_ERROR ) override;
     //-----</OUTPUTFORMATTER>-----------------------------------------------
 };
 
diff --git a/include/tool/context_menu.h b/include/tool/context_menu.h
index d67c912..45760c8 100644
--- a/include/tool/context_menu.h
+++ b/include/tool/context_menu.h
@@ -57,7 +57,7 @@ public:
      * the menu.
      * @param aTitle is the new title.
      */
-    virtual void SetTitle( const wxString& aTitle );
+    virtual void SetTitle( const wxString& aTitle ) override;
 
     /**
      * Function Add()
diff --git a/include/ttl/halfedge/hetriang.h b/include/ttl/halfedge/hetriang.h
index f84c542..75ee231 100644
--- a/include/ttl/halfedge/hetriang.h
+++ b/include/ttl/halfedge/hetriang.h
@@ -306,7 +306,7 @@ public:
     }
 
     /// @copydoc Edge::setSourceNode()
-    virtual const NODE_PTR& GetTargetNode() const
+    virtual const NODE_PTR& GetTargetNode() const override
     {
         return m_target;
     }
diff --git a/include/view/view_group.h b/include/view/view_group.h
index 2a31a61..863f3f5 100644
--- a/include/view/view_group.h
+++ b/include/view/view_group.h
@@ -102,7 +102,7 @@ public:
      *
      * @return The current bounding box
      */
-    virtual const BOX2I ViewBBox() const;
+    virtual const BOX2I ViewBBox() const override;
 
     /**
      * Function ViewDraw()
@@ -111,7 +111,7 @@ public:
      * @param aLayer is the layer which should be drawn.
      * @param aGal is the GAL that should be used for drawing.
      */
-    virtual void ViewDraw( int aLayer, GAL* aGal ) const;
+    virtual void ViewDraw( int aLayer, GAL* aGal ) const override;
 
     /**
      * Function ViewGetLayers()
@@ -120,7 +120,7 @@ public:
      * @param aLayers[] is the output layer index array.
      * @param aCount is the number of layer indices in aLayers[].
      */
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
     /**
      * Function SetLayer()
@@ -170,23 +170,23 @@ protected:
     /// These functions cannot be used with VIEW_GROUP as they are intended only to work with
     /// singular VIEW_ITEMs (there is only one-to-one relation between item/layer combination and
     /// its group).
-    virtual int getGroup( int aLayer ) const
+    virtual int getGroup( int aLayer ) const override
     {
         return -1;
     }
 
-    virtual std::vector<int> getAllGroups() const
+    virtual std::vector<int> getAllGroups() const override
     {
         return std::vector<int>();
     }
 
-    virtual void setGroup( int aLayer, int aGroup )
+    virtual void setGroup( int aLayer, int aGroup ) override
     {}
 
-    virtual void deleteGroups()
+    virtual void deleteGroups() override
     {}
 
-    virtual bool storesGroups() const
+    virtual bool storesGroups() const override
     {
         return false;
     }
diff --git a/include/view/wx_view_controls.h b/include/view/wx_view_controls.h
index efc2cd7..a9f948e 100644
--- a/include/view/wx_view_controls.h
+++ b/include/view/wx_view_controls.h
@@ -64,7 +64,7 @@ public:
      *
      * @param aEnabled says whether the option should be enabled or disabled.
      */
-    virtual void SetGrabMouse( bool aEnabled );
+    virtual void SetGrabMouse( bool aEnabled ) override;
 
     /**
      * Function SetAutoPan()
@@ -72,7 +72,7 @@ public:
      *
      * @param aEnabled says whether the option should enabled or disabled.
      */
-    virtual void SetAutoPan( bool aEnabled )
+    virtual void SetAutoPan( bool aEnabled ) override
     {
         m_autoPanEnabled = aEnabled;
 
@@ -81,10 +81,10 @@ public:
     }
 
     /// @copydoc VIEW_CONTROLS::GetMousePosition()
-    virtual VECTOR2D GetMousePosition() const;
+    virtual VECTOR2D GetMousePosition() const override;
 
     /// @copydoc VIEW_CONTROLS::GetCursorPosition()
-    virtual VECTOR2D GetCursorPosition() const;
+    virtual VECTOR2D GetCursorPosition() const override;
 
     /// Event that forces mouse move event in the dispatcher (eg. used in autopanning, when mouse
     /// cursor does not move in screen coordinates, but does in world coordinates)
diff --git a/include/worksheet_shape_builder.h b/include/worksheet_shape_builder.h
index a54a361..65cbe70 100644
--- a/include/worksheet_shape_builder.h
+++ b/include/worksheet_shape_builder.h
@@ -143,25 +143,25 @@ public:
 
     /** The function to draw a WS_DRAW_ITEM_LINE
      */
-    virtual void DrawWsItem( EDA_RECT* aClipBox, wxDC* aDC );
+    virtual void DrawWsItem( EDA_RECT* aClipBox, wxDC* aDC ) override;
 
     /**
      * Virtual function
      * return true if the point aPosition is on the line
      */
-    virtual bool HitTest( const wxPoint& aPosition) const;
+    virtual bool HitTest( const wxPoint& aPosition) const override;
 
     /**
      * return true if the point aPosition is on the starting point of this item.
      */
-    virtual bool HitTestStartPoint( const wxPoint& aPosition);
+    virtual bool HitTestStartPoint( const wxPoint& aPosition) override;
 
     /**
      * return true if the point aPosition is on the ending point of this item
      * This is avirtual function which should be overriden for items defien by
      * 2 points
      */
-    virtual bool HitTestEndPoint( const wxPoint& aPosition);
+    virtual bool HitTestEndPoint( const wxPoint& aPosition) override;
 };
 
 // This class draws a polygon
@@ -193,18 +193,18 @@ public:
 
     /** The function to draw a WS_DRAW_ITEM_POLYGON
      */
-    virtual void DrawWsItem( EDA_RECT* aClipBox, wxDC* aDC );
+    virtual void DrawWsItem( EDA_RECT* aClipBox, wxDC* aDC ) override;
 
     /**
      * Virtual function
      * return true if the point aPosition is inside one polygon
      */
-    virtual bool HitTest( const wxPoint& aPosition) const;
+    virtual bool HitTest( const wxPoint& aPosition) const override;
 
     /**
      * return true if the point aPosition is on the starting point of this item.
      */
-    virtual bool HitTestStartPoint( const wxPoint& aPosition);
+    virtual bool HitTestStartPoint( const wxPoint& aPosition) override;
 };
 
 // This class draws a not filled rectangle with thick segment
@@ -221,25 +221,25 @@ public:
 
     /** The function to draw a WS_DRAW_ITEM_RECT
      */
-    virtual void DrawWsItem( EDA_RECT* aClipBox, wxDC* aDC );
+    virtual void DrawWsItem( EDA_RECT* aClipBox, wxDC* aDC ) override;
 
     /**
      * Virtual function
      * return true if the point aPosition is on one edge of the rectangle
      */
-    virtual bool HitTest( const wxPoint& aPosition) const;
+    virtual bool HitTest( const wxPoint& aPosition) const override;
 
     /**
      * return true if the point aPosition is on the starting point of this item.
      */
-    virtual bool HitTestStartPoint( const wxPoint& aPosition);
+    virtual bool HitTestStartPoint( const wxPoint& aPosition) override;
 
     /**
      * return true if the point aPosition is on the ending point of this item
      * This is avirtual function which should be overriden for items defien by
      * 2 points
      */
-    virtual bool HitTestEndPoint( const wxPoint& aPosition);
+    virtual bool HitTestEndPoint( const wxPoint& aPosition) override;
 };
 
 // This class draws a graphic text.
@@ -255,7 +255,7 @@ public:
 
     /** The function to draw a WS_DRAW_ITEM_TEXT
      */
-    virtual void DrawWsItem( EDA_RECT* aClipBox, wxDC* aDC );
+    virtual void DrawWsItem( EDA_RECT* aClipBox, wxDC* aDC ) override;
 
     // Accessors:
     int GetPenWidth() { return GetThickness(); }
@@ -264,12 +264,12 @@ public:
      * Virtual function
      * return true if the point aPosition is on the text
      */
-    virtual bool HitTest( const wxPoint& aPosition) const;
+    virtual bool HitTest( const wxPoint& aPosition) const override;
 
     /**
      * return true if the point aPosition is on the starting point of this item.
      */
-    virtual bool HitTestStartPoint( const wxPoint& aPosition);
+    virtual bool HitTestStartPoint( const wxPoint& aPosition) override;
 };
 
 // This class draws a bitmap.
@@ -293,18 +293,18 @@ public:
 
     /** The function to draw a WS_DRAW_ITEM_BITMAP
      */
-    virtual void DrawWsItem( EDA_RECT* aClipBox, wxDC* aDC );
+    virtual void DrawWsItem( EDA_RECT* aClipBox, wxDC* aDC ) override;
 
     /**
      * Virtual function
      * return true if the point aPosition is on bitmap
      */
-    virtual bool HitTest( const wxPoint& aPosition) const;
+    virtual bool HitTest( const wxPoint& aPosition) const override;
 
     /**
      * return true if the point aPosition is on the reference point of this item.
      */
-    virtual bool HitTestStartPoint( const wxPoint& aPosition);
+    virtual bool HitTestStartPoint( const wxPoint& aPosition) override;
 
     const wxPoint& GetPosition() { return m_pos; }
 };
diff --git a/include/worksheet_viewitem.h b/include/worksheet_viewitem.h
index 6200fbe..8e4bae1 100644
--- a/include/worksheet_viewitem.h
+++ b/include/worksheet_viewitem.h
@@ -115,25 +115,23 @@ public:
     }
 
     /// @copydoc VIEW_ITEM::ViewBBox()
-    virtual const BOX2I ViewBBox() const;
+    virtual const BOX2I ViewBBox() const override;
 
     /// @copydoc VIEW_ITEM::ViewDraw()
-    virtual void ViewDraw( int aLayer, GAL* aGal ) const;
+    virtual void ViewDraw( int aLayer, GAL* aGal ) const override;
 
     /// @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
 #if defined(DEBUG)
     /// @copydoc EDA_ITEM::Show()
-    virtual void Show( int x, std::ostream& st ) const
-    {
-    }
+    virtual void Show( int x, std::ostream& st ) const override { }
 #endif
 
     /** Get class name
      * @return  string "WORKSHEET_VIEWITEM"
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return "WORKSHEET_VIEWITEM";
     }
diff --git a/include/wxBasePcbFrame.h b/include/wxBasePcbFrame.h
index fed5d2c..d4d31f5 100644
--- a/include/wxBasePcbFrame.h
+++ b/include/wxBasePcbFrame.h
@@ -91,7 +91,7 @@ protected:
 
     void updateGridSelectBox();
     void updateZoomSelectBox();
-    virtual void unitsChangeRefresh();
+    virtual void unitsChangeRefresh() override;
 
     /**
      * Function loadFootprint
@@ -131,18 +131,18 @@ public:
      */
     EDA_RECT    GetBoardBoundingBox( bool aBoardEdgesOnly = false ) const;
 
-    virtual void SetPageSettings( const PAGE_INFO& aPageSettings );     // overload
-    virtual const PAGE_INFO& GetPageSettings() const;                   // overload
-    virtual const wxSize GetPageSizeIU() const;                         // overload
+    virtual void SetPageSettings( const PAGE_INFO& aPageSettings ) override;
+    virtual const PAGE_INFO& GetPageSettings() const override;
+    virtual const wxSize GetPageSizeIU() const override;
 
-    virtual const wxPoint& GetAuxOrigin() const;                        // overload
-    virtual void SetAuxOrigin( const wxPoint& aPoint );                 // overload
+    virtual const wxPoint& GetAuxOrigin() const override;
+    virtual void SetAuxOrigin( const wxPoint& aPoint ) override;
 
-    virtual const wxPoint& GetGridOrigin() const;                       // overload
-    virtual void SetGridOrigin( const wxPoint& aPoint );                // overload
+    virtual const wxPoint& GetGridOrigin() const override;
+    virtual void SetGridOrigin( const wxPoint& aPoint ) override;
 
-    virtual const TITLE_BLOCK& GetTitleBlock() const;                   // overload
-    virtual void SetTitleBlock( const TITLE_BLOCK& aTitleBlock );       // overload
+    virtual const TITLE_BLOCK& GetTitleBlock() const override;
+    virtual void SetTitleBlock( const TITLE_BLOCK& aTitleBlock ) override;
 
     /**
      * Function GetDesignSettings
@@ -160,7 +160,7 @@ public:
      * Must be overloaded in frames which have display options
      * (board editor and footprint editor)
      */
-    virtual void* GetDisplayOptions() { return &m_DisplayOptions; }
+    virtual void* GetDisplayOptions() override { return &m_DisplayOptions; }
 
     const ZONE_SETTINGS& GetZoneSettings() const;
     void SetZoneSettings( const ZONE_SETTINGS& aSettings );
@@ -189,23 +189,23 @@ public:
 
     // General
     virtual void OnCloseWindow( wxCloseEvent& Event ) = 0;
-    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg ) { }
-    virtual void ReCreateHToolbar() = 0;
-    virtual void ReCreateVToolbar() = 0;
-    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos ) = 0;
-    virtual void OnLeftDClick( wxDC* DC, const wxPoint& MousePos ) = 0;
-    virtual bool OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu )  = 0;
-    virtual void ReCreateMenuBar();
-    virtual void SetToolID( int aId, int aCursor, const wxString& aToolMsg );
-    virtual void UpdateStatusBar();
+    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg ) override { }
+    virtual void ReCreateHToolbar() override = 0;
+    virtual void ReCreateVToolbar() override = 0;
+    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos ) override = 0;
+    virtual void OnLeftDClick( wxDC* DC, const wxPoint& MousePos ) override = 0;
+    virtual bool OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu ) override = 0;
+    virtual void ReCreateMenuBar() override;
+    virtual void SetToolID( int aId, int aCursor, const wxString& aToolMsg ) override;
+    virtual void UpdateStatusBar() override;
 
-    virtual PCB_SCREEN* GetScreen() const { return (PCB_SCREEN*) EDA_DRAW_FRAME::GetScreen(); }
+    virtual PCB_SCREEN* GetScreen() const override { return (PCB_SCREEN*) EDA_DRAW_FRAME::GetScreen(); }
 
     /**
      * Function BestZoom
      * @return the "best" zoom to show the entire board or footprint on the screen.
      */
-    virtual double BestZoom();
+    virtual double BestZoom() override;
 
     /**
      * Function GetZoomLevelIndicator
@@ -213,7 +213,7 @@ public:
      * level indicator in dialogs.
      * Virtual from the base class
      */
-    virtual const wxString GetZoomLevelIndicator() const;
+    virtual const wxString GetZoomLevelIndicator() const override;
 
     virtual void Show3D_Frame( wxCommandEvent& event );
 
@@ -630,8 +630,8 @@ public:
         return ( (PCB_SCREEN*) GetScreen() )->m_Active_Layer;
     }
 
-    virtual void LoadSettings( wxConfigBase* aCfg );    // override
-    virtual void SaveSettings( wxConfigBase* aCfg );    // override
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     bool InvokeDialogGrid();
 
diff --git a/include/wxPcbStruct.h b/include/wxPcbStruct.h
index 0e6fec9..fc61954 100644
--- a/include/wxPcbStruct.h
+++ b/include/wxPcbStruct.h
@@ -170,7 +170,7 @@ protected:
      */
     void syncLayerVisibilities();
 
-    virtual void unitsChangeRefresh();
+    virtual void unitsChangeRefresh() override;
 
     /**
      * Function doAutoSave
@@ -179,13 +179,13 @@ protected:
      *
      * @return true if the auto save was successful.
      */
-    virtual bool doAutoSave();
+    virtual bool doAutoSave() override;
 
     /**
      * Function isautoSaveRequired
      * returns true if the board has been modified.
      */
-    virtual bool isAutoSaveRequired() const;
+    virtual bool isAutoSaveRequired() const override;
 
     /**
      * Function duplicateZone
@@ -229,9 +229,10 @@ public:
      * this is a virtual function called by EDA_DRAW_FRAME::OnSockRequest().
      * @param cmdline = received command from socket
      */
-    virtual void ExecuteRemoteCommand( const char* cmdline );
+    virtual void ExecuteRemoteCommand( const char* cmdline ) override;
 
-    virtual void KiwayMailIn( KIWAY_EXPRESS& aEvent );      // overload from KIWAY_PLAYER
+    // KIWAY_PLAYER
+    virtual void KiwayMailIn( KIWAY_EXPRESS& aEvent ) override;
 
     /**
      * Function ToPlotter
@@ -307,7 +308,7 @@ public:
      * @param aData = a pointer on an auxiliary data (NULL if not used)
      */
     virtual void PrintPage( wxDC* aDC, LSET aPrintMaskLayer, bool aPrintMirrorMode,
-                            void* aData = NULL );
+                            void* aData = NULL ) override;
 
     void GetKicadAbout( wxCommandEvent& event );
 
@@ -315,7 +316,7 @@ public:
      * Function IsGridVisible() , virtual
      * @return true if the grid must be shown
      */
-    virtual bool IsGridVisible() const;
+    virtual bool IsGridVisible() const override;
 
     /**
      * Function SetGridVisibility() , virtual
@@ -323,19 +324,19 @@ public:
      * if you want to store/retrieve the grid visibility in configuration.
      * @param aVisible = true if the grid must be shown
      */
-    virtual void SetGridVisibility( bool aVisible );
+    virtual void SetGridVisibility( bool aVisible ) override;
 
     /**
      * Function GetGridColor() , virtual
      * @return the color of the grid
      */
-    virtual EDA_COLOR_T GetGridColor() const;
+    virtual EDA_COLOR_T GetGridColor() const override;
 
     /**
      * Function SetGridColor() , virtual
      * @param aColor = the new color of the grid
      */
-    virtual void SetGridColor(EDA_COLOR_T aColor);
+    virtual void SetGridColor(EDA_COLOR_T aColor) override;
 
     // Configurations:
     void Process_Config( wxCommandEvent& event );
@@ -359,7 +360,7 @@ public:
      * saves changes to the project settings to the project (.pro) file.
      * @param aAskForSave = true to open a dialog before saving the settings
      */
-    void SaveProjectSettings( bool aAskForSave );
+    virtual void SaveProjectSettings( bool aAskForSave ) override;
 
     /**
      * Load the current project's file configuration settings which are pertinent
@@ -386,9 +387,9 @@ public:
      */
     PARAM_CFG_ARRAY& GetConfigurationSettings();
 
-    void LoadSettings( wxConfigBase* aCfg );    // override virtual
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
 
-    void SaveSettings( wxConfigBase* aCfg );    // override virtual
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     /**
      * Get the last net list read with the net list dialog box.
@@ -439,7 +440,7 @@ public:
      * @param aPosition The cursor position in logical (drawing) units.
      * @param aItem = NULL or pointer on a EDA_ITEM under the mouse cursor
      */
-    virtual bool OnHotKey( wxDC* aDC, int aHotkeyCode, const wxPoint& aPosition, EDA_ITEM* aItem = NULL );
+    virtual bool OnHotKey( wxDC* aDC, int aHotkeyCode, const wxPoint& aPosition, EDA_ITEM* aItem = NULL ) override;
 
     /**
      * Function OnHotkeyDeleteItem
@@ -514,7 +515,7 @@ public:
      */
     TRACK * OnHotkeyBeginRoute( wxDC* aDC );
 
-    virtual void OnCloseWindow( wxCloseEvent& Event );
+    virtual void OnCloseWindow( wxCloseEvent& Event ) override;
     void Process_Special_Functions( wxCommandEvent& event );
     void Tracks_and_Vias_Size_Event( wxCommandEvent& event );
     void OnSelectTool( wxCommandEvent& aEvent );
@@ -529,13 +530,13 @@ public:
     void ProcessMuWaveFunctions( wxCommandEvent& event );
     void MuWaveCommand( wxDC* DC, const wxPoint& MousePos );
 
-    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg );
-    virtual void ReCreateHToolbar();
-    virtual void ReCreateAuxiliaryToolbar();
-    virtual void ReCreateVToolbar();
+    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg ) override;
+    virtual void ReCreateHToolbar() override;
+    virtual void ReCreateAuxiliaryToolbar() override;
+    virtual void ReCreateVToolbar() override;
     void ReCreateMicrowaveVToolbar();
     void ReCreateOptToolbar();
-    virtual void ReCreateMenuBar();
+    virtual void ReCreateMenuBar() override;
 
     /**
      * Re create the layer Box by clearing the old list, and building
@@ -567,14 +568,14 @@ public:
      * to update auxiliary information.
      * </p>
      */
-    virtual void OnModify();
+    virtual void OnModify() override;
 
     /**
      * Function SetActiveLayer
      * will change the currently active layer to \a aLayer and also
      * update the PCB_LAYER_WIDGET.
      */
-    virtual void SetActiveLayer( LAYER_ID aLayer );
+    virtual void SetActiveLayer( LAYER_ID aLayer ) override;
 
     /**
      * Function IsElementVisible
@@ -612,14 +613,14 @@ public:
      * Function Show3D_Frame
      * displays the 3D view of current printed circuit board.
      */
-    virtual void Show3D_Frame( wxCommandEvent& event );
+    virtual void Show3D_Frame( wxCommandEvent& event ) override;
 
     /**
      * Function UseGalCanvas
      * Enables/disables GAL canvas.
      * @param aEnable determines if GAL should be active or not.
      */
-    virtual void UseGalCanvas( bool aEnable );
+    virtual void UseGalCanvas( bool aEnable ) override;
 
     /**
      * Function ChangeCanvas
@@ -627,7 +628,7 @@ public:
      */
     void SwitchCanvas( wxCommandEvent& aEvent );
 
-    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 );
+    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 ) override;
 
     /**
      * Function ShowDesignRulesEditor
@@ -640,8 +641,8 @@ public:
     void PrepareLayerIndicator();
 
     /* mouse functions events: */
-    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos );
-    virtual void OnLeftDClick( wxDC* DC, const wxPoint& MousePos );
+    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos ) override;
+    virtual void OnLeftDClick( wxDC* DC, const wxPoint& MousePos ) override;
 
     /**
      * Function OnRightClick
@@ -650,10 +651,10 @@ public:
      * @param aMousePos The current mouse position
      * @param aPopMenu The menu to add to.
      */
-    virtual bool OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu );
+    virtual bool OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu ) override;
 
     void OnSelectOptionToolbar( wxCommandEvent& event );
-    virtual void ToolOnRightClick( wxCommandEvent& event );
+    virtual void ToolOnRightClick( wxCommandEvent& event ) override;
 
     /**
      * Function SaveCopyInUndoList.
@@ -666,7 +667,7 @@ public:
      */
     virtual void SaveCopyInUndoList( BOARD_ITEM* aItemToCopy,
                                      UNDO_REDO_T aTypeCommand,
-                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) );
+                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) ) override;
 
     /**
      * Function SaveCopyInUndoList (overloaded).
@@ -679,7 +680,7 @@ public:
      */
     virtual void SaveCopyInUndoList( const PICKED_ITEMS_LIST& aItemsList,
                                      UNDO_REDO_T aTypeCommand,
-                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) );
+                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) ) override;
 
     /**
      * Function PutDataInPreviousState
@@ -702,7 +703,7 @@ public:
      *  - Get an old version of the board from Redo list
      *  @return none
      */
-    virtual void RestoreCopyFromRedoList( wxCommandEvent& aEvent );
+    virtual void RestoreCopyFromRedoList( wxCommandEvent& aEvent ) override;
 
     /**
      * Function RestoreCopyFromUndoList
@@ -711,7 +712,7 @@ public:
      *  - Get an old version of the board from Undo list
      *  @return none
      */
-    virtual void RestoreCopyFromUndoList( wxCommandEvent& aEvent );
+    virtual void RestoreCopyFromUndoList( wxCommandEvent& aEvent ) override;
 
     /* Block operations: */
 
@@ -723,7 +724,7 @@ public:
      * @param aKey = the key modifiers (Alt, Shift ...)
      * @return the block command id (BLOCK_MOVE, BLOCK_COPY...)
      */
-    virtual int BlockCommand( int aKey );
+    virtual int BlockCommand( int aKey ) override;
 
     /**
      * Function HandleBlockPlace()
@@ -732,7 +733,7 @@ public:
      * (bloc move, drag, copy .. )
      * Parameters must be initialized in GetScreen()->m_BlockLocate
      */
-    virtual void HandleBlockPlace( wxDC* DC );
+    virtual void HandleBlockPlace( wxDC* DC ) override;
 
     /**
      * Function HandleBlockEnd()
@@ -744,7 +745,7 @@ public:
      * @return false if no item selected, or command finished,
      * true if some items found and HandleBlockPlace must be called later
      */
-    virtual bool HandleBlockEnd( wxDC* DC );
+    virtual bool HandleBlockEnd( wxDC* DC ) override;
 
     /**
      * Function Block_SelectItems
@@ -867,7 +868,7 @@ public:
     bool LoadOnePcbFile( const wxString& aFileName, bool aAppend = false,
                          bool aForceFileDialog = false );
      */
-    virtual bool OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl = 0 );
+    virtual bool OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl = 0 ) override;
 
     /**
      * Function AppendBoardFile
@@ -913,10 +914,10 @@ public:
     bool Clear_Pcb( bool aQuery );
 
     ///> @copydoc PCB_BASE_FRAME::SetBoard()
-    virtual void SetBoard( BOARD* aBoard );
+    virtual void SetBoard( BOARD* aBoard ) override;
 
     ///> @copydoc PCB_BASE_FRAME::SetPageSettings()
-    virtual void SetPageSettings( const PAGE_INFO& aPageSettings ); // overload
+    virtual void SetPageSettings( const PAGE_INFO& aPageSettings ) override;
 
     // Drc control
 
@@ -1139,7 +1140,7 @@ public:
      * @param aDC = the current device context
      * @param aItem = a pointer to the BOARD_ITEM to edit
      */
-    virtual void OnEditItemRequest( wxDC* aDC, BOARD_ITEM* aItem );
+    virtual void OnEditItemRequest( wxDC* aDC, BOARD_ITEM* aItem ) override;
 
     /**
      * Locate track or pad and highlight the corresponding net.
@@ -1289,7 +1290,7 @@ public:
     bool MergeCollinearTracks( TRACK* track, wxDC* DC, int end );
 
     void Start_DragTrackSegmentAndKeepSlope( TRACK* track, wxDC* DC );
-    virtual void SwitchLayer( wxDC* DC, LAYER_ID layer );
+    virtual void SwitchLayer( wxDC* DC, LAYER_ID layer ) override;
 
     /**
      * Function Add45DegreeSegment
@@ -1696,7 +1697,8 @@ public:
      */
     MODULE* Genere_Self( wxDC* DC );
 
-    virtual void ShowChangedLanguage();         // override EDA_BASE_FRAME
+    // EDA_BASE_FRAME
+    virtual void ShowChangedLanguage() override;
 
     /**
      * Function UpdateTitle
diff --git a/include/wxstruct.h b/include/wxstruct.h
index ded28c9..8b635c3 100644
--- a/include/wxstruct.h
+++ b/include/wxstruct.h
@@ -190,9 +190,9 @@ public:
      * @warning If you override this function in a derived class, make sure you call
      *          down to this or the auto save feature will be disabled.
      */
-    virtual bool ProcessEvent( wxEvent& aEvent );
+    virtual bool ProcessEvent( wxEvent& aEvent ) override;
 
-    virtual bool Enable( bool enable );
+    virtual bool Enable( bool enable ) override;
 
     void SetAutoSaveInterval( int aInterval ) { m_autoSaveInterval = aInterval; }
 
diff --git a/kicad/class_treeprojectfiles.h b/kicad/class_treeprojectfiles.h
index f6ddc4f..a4a563b 100644
--- a/kicad/class_treeprojectfiles.h
+++ b/kicad/class_treeprojectfiles.h
@@ -51,7 +51,7 @@ public:
     ~TREEPROJECTFILES();
 private:
     /* overridden sort function */
-    virtual int OnCompareItems( const wxTreeItemId& item1, const wxTreeItemId& item2 );
+    virtual int OnCompareItems( const wxTreeItemId& item1, const wxTreeItemId& item2 ) override;
 };
 
 #endif  // CLASS_TREEPROJECTFILES_H
diff --git a/kicad/dialogs/dialog_template_selector.h b/kicad/dialogs/dialog_template_selector.h
index 4ecee6c..012985e 100644
--- a/kicad/dialogs/dialog_template_selector.h
+++ b/kicad/dialogs/dialog_template_selector.h
@@ -96,7 +96,7 @@ public:
     TEMPLATE_WIDGET* GetWidget();
     void SetWidget( TEMPLATE_WIDGET* aWidget );
     void onNotebookResize( wxSizeEvent& event );
-    virtual void OnPageChange( wxNotebookEvent& event );
+    virtual void OnPageChange( wxNotebookEvent& event ) override;
 };
 
 #endif
diff --git a/kicad/kicad.cpp b/kicad/kicad.cpp
index 575dc29..4880154 100644
--- a/kicad/kicad.cpp
+++ b/kicad/kicad.cpp
@@ -249,7 +249,7 @@ KIWAY  Kiway( &Pgm(), KFCTL_CPP_PROJECT_SUITE );
  */
 struct APP_KICAD : public wxApp
 {
-    virtual bool OnInit()
+    virtual bool OnInit() override
     {
         // if( Kiways.OnStart( this ) )
         {
@@ -258,7 +258,7 @@ struct APP_KICAD : public wxApp
         return false;
     }
 
-    virtual int  OnExit()
+    virtual int  OnExit() override
     {
         // Kiways.OnEnd();
 
@@ -267,7 +267,7 @@ struct APP_KICAD : public wxApp
         return wxApp::OnExit();
     }
 
-    virtual int OnRun()
+    virtual int OnRun() override
     {
         try
         {
diff --git a/kicad/kicad.h b/kicad/kicad.h
index 4ca4bbd..e174ce7 100644
--- a/kicad/kicad.h
+++ b/kicad/kicad.h
@@ -195,7 +195,7 @@ public:
 
     void Process_Config( wxCommandEvent& event );
 
-    virtual void ReCreateMenuBar();
+    virtual void ReCreateMenuBar() override;
     void RecreateBaseHToolbar();
 
     /**
@@ -227,9 +227,9 @@ public:
 
     void CreateNewProject( const wxString& aPrjFullFileName, bool aTemplateSelector );
 
-    virtual void LoadSettings( wxConfigBase* aCfg );
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
 
-    virtual void SaveSettings( wxConfigBase* aCfg );
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     /**
      * Function Execute
@@ -252,7 +252,7 @@ public:
         {
         }
 
-        virtual void OnTerminate( int pid, int status );
+        virtual void OnTerminate( int pid, int status ) override;
     };
 
 #ifdef KICAD_USE_FILES_WATCHER
@@ -285,11 +285,11 @@ public:
 
 private:
 
-    virtual wxConfigBase*       config();
+    virtual wxConfigBase*       config() override;
 
-    virtual const SEARCH_STACK& sys_search();
+    virtual const SEARCH_STACK& sys_search() override;
 
-    virtual wxString help_name();
+    virtual wxString help_name() override;
 
     TREE_PROJECT_FRAME* m_LeftWin;
     LAUNCHER_PANEL*     m_Launcher;
diff --git a/kicad/pgm_kicad.h b/kicad/pgm_kicad.h
index fc07014..5267dee 100644
--- a/kicad/pgm_kicad.h
+++ b/kicad/pgm_kicad.h
@@ -48,9 +48,9 @@ public:
         destroy();
     }
 
-    virtual bool OnPgmInit( wxApp* aWxApp );
-    virtual void OnPgmExit();
-    virtual void MacOpenFile( const wxString& aFileName );
+    virtual bool OnPgmInit( wxApp* aWxApp ) override;
+    virtual void OnPgmExit() override;
+    virtual void MacOpenFile( const wxString& aFileName ) override;
 
     wxFileHistory&  GetFileHistory()            { return m_bm.m_history; }
 
diff --git a/lib_dxf/drw_entities.h b/lib_dxf/drw_entities.h
index 7f7b085..211c54d 100644
--- a/lib_dxf/drw_entities.h
+++ b/lib_dxf/drw_entities.h
@@ -159,7 +159,7 @@ public:
         thickness = 0;
     }
 
-    virtual void applyExtrusion() {}
+    virtual void applyExtrusion() override {}
 
     void parseCode( int code, dxfReader* reader );
 
@@ -183,7 +183,7 @@ public:
         secPoint.z = 0;
     }
 
-    virtual void applyExtrusion() {}
+    virtual void applyExtrusion() override {}
     void parseCode( int code, dxfReader* reader );
 
 public:
@@ -232,7 +232,7 @@ public:
         radious = 0.0;
     }
 
-    virtual void    applyExtrusion();
+    virtual void    applyExtrusion() override;
     void            parseCode( int code, dxfReader* reader );
 
 public:
@@ -255,7 +255,7 @@ public:
         endangle    = 0.0;
     }
 
-    virtual void    applyExtrusion();
+    virtual void    applyExtrusion() override;
     void            parseCode( int code, dxfReader* reader );
 
 public:
@@ -284,7 +284,7 @@ public:
 
     void            parseCode( int code, dxfReader* reader );
     void            toPolyline( DRW_Polyline* pol, int parts = 128 );
-    virtual void    applyExtrusion();
+    virtual void    applyExtrusion() override;
     void            correctAxis();
 
 public:
@@ -309,7 +309,7 @@ public:
         fourPoint.z     = 0;
     }
 
-    virtual void    applyExtrusion();
+    virtual void    applyExtrusion() override;
     void            parseCode( int code, dxfReader* reader );
 
 public:
@@ -347,7 +347,7 @@ public:
         invisibleflag = 0;
     }
 
-    virtual void applyExtrusion() {}
+    virtual void applyExtrusion() override {}
     void parseCode( int code, dxfReader* reader );
 
 public:
@@ -370,7 +370,7 @@ public:
         name    = "*U0";
     }
 
-    virtual void applyExtrusion() {}
+    virtual void applyExtrusion() override {}
     void parseCode( int code, dxfReader* reader );
 
 public:
@@ -400,7 +400,7 @@ public:
         rowspace    = 0;
     }
 
-    virtual void applyExtrusion() { DRW_Point::applyExtrusion(); }
+    virtual void applyExtrusion() override { DRW_Point::applyExtrusion(); }
     void parseCode( int code, dxfReader* reader );
 
 public:
@@ -442,7 +442,7 @@ public:
         }
     }
 
-    virtual void applyExtrusion();
+    virtual void applyExtrusion() override;
 
     void addVertex( DRW_Vertex2D v )
     {
@@ -521,7 +521,7 @@ public:
         height  = 0.0;
     }
 
-    virtual void applyExtrusion() {}    // RLZ TODO
+    virtual void applyExtrusion() override {}    // RLZ TODO
     void parseCode( int code, dxfReader* reader );
 
 public:
@@ -715,7 +715,7 @@ public:
         }
     }
 
-    virtual void applyExtrusion() {}
+    virtual void applyExtrusion() override {}
 
     void parseCode( int code, dxfReader* reader );
 
@@ -820,7 +820,7 @@ public:
         looplist.push_back( v );
     }
 
-    virtual void applyExtrusion() {}
+    virtual void applyExtrusion() override {}
     void parseCode( int code, dxfReader* reader );
 
 public:
@@ -988,7 +988,7 @@ public:
 
     void parseCode( int code, dxfReader* reader );
 
-    virtual void applyExtrusion() {}
+    virtual void applyExtrusion() override {}
 
     DRW_Coord getDefPoint() const { return defPoint; }      /*!< Definition point, code 10, 20 & 30 */
     void setDefPoint( const DRW_Coord& p ) { defPoint = p; }
@@ -1280,7 +1280,7 @@ public:
         }
     }
 
-    virtual void applyExtrusion() {}
+    virtual void applyExtrusion() override {}
     void parseCode( int code, dxfReader* reader );
 
 public:
@@ -1324,7 +1324,7 @@ public:
         centerPY    = 97.5;
     }
 
-    virtual void applyExtrusion() {}
+    virtual void applyExtrusion() override {}
     void parseCode( int code, dxfReader* reader );
 
 public:
diff --git a/lib_dxf/intern/drw_textcodec.h b/lib_dxf/intern/drw_textcodec.h
index 1a8c56a..d6a8977 100644
--- a/lib_dxf/intern/drw_textcodec.h
+++ b/lib_dxf/intern/drw_textcodec.h
@@ -56,8 +56,8 @@ class DRW_ConvTable : public DRW_Converter
 {
 public:
     DRW_ConvTable( const int* t, int l ) : DRW_Converter( t, l ) {}
-    virtual std::string fromUtf8( std::string* s );
-    virtual std::string toUtf8( std::string* s );
+    virtual std::string fromUtf8( std::string* s ) override;
+    virtual std::string toUtf8( std::string* s ) override;
 };
 
 class DRW_ConvDBCSTable : public DRW_Converter
@@ -70,8 +70,8 @@ public:
         doubleTable = dt;
     }
 
-    virtual std::string fromUtf8( std::string* s );
-    virtual std::string toUtf8( std::string* s );
+    virtual std::string fromUtf8( std::string* s ) override;
+    virtual std::string toUtf8( std::string* s ) override;
 
 private:
     const int* leadTable;
@@ -88,8 +88,8 @@ public:
         doubleTable = dt;
     }
 
-    virtual std::string fromUtf8( std::string* s );
-    virtual std::string toUtf8( std::string* s );
+    virtual std::string fromUtf8( std::string* s ) override;
+    virtual std::string toUtf8( std::string* s ) override;
 
 private:
     const int* leadTable;
diff --git a/lib_dxf/intern/dxfreader.h b/lib_dxf/intern/dxfreader.h
index 8452449..0049378 100644
--- a/lib_dxf/intern/dxfreader.h
+++ b/lib_dxf/intern/dxfreader.h
@@ -73,14 +73,14 @@ class dxfReaderBinary : public dxfReader
 public:
     dxfReaderBinary( std::ifstream* stream ) : dxfReader( stream ) {}
     virtual ~dxfReaderBinary() {}
-    virtual bool    readCode( int* code );
-    virtual bool    readString( std::string* text );
-    virtual bool    readString();
-    virtual bool    readInt();
-    virtual bool    readInt32();
-    virtual bool    readInt64();
-    virtual bool    readDouble();
-    virtual bool    readBool();
+    virtual bool    readCode( int* code ) override;
+    virtual bool    readString( std::string* text ) override;
+    virtual bool    readString() override;
+    virtual bool    readInt() override;
+    virtual bool    readInt32() override;
+    virtual bool    readInt64() override;
+    virtual bool    readDouble() override;
+    virtual bool    readBool() override;
 };
 
 class dxfReaderAscii : public dxfReader
@@ -88,14 +88,14 @@ class dxfReaderAscii : public dxfReader
 public:
     dxfReaderAscii( std::ifstream* stream ) : dxfReader( stream ) {}
     virtual ~dxfReaderAscii() {}
-    virtual bool    readCode( int* code );
-    virtual bool    readString( std::string* text );
-    virtual bool    readString();
-    virtual bool    readInt();
-    virtual bool    readDouble();
-    virtual bool    readInt32();
-    virtual bool    readInt64();
-    virtual bool    readBool();
+    virtual bool    readCode( int* code ) override;
+    virtual bool    readString( std::string* text ) override;
+    virtual bool    readString() override;
+    virtual bool    readInt() override;
+    virtual bool    readDouble() override;
+    virtual bool    readInt32() override;
+    virtual bool    readInt64() override;
+    virtual bool    readBool() override;
 };
 
 #endif    // DXFREADER_H
diff --git a/lib_dxf/intern/dxfwriter.h b/lib_dxf/intern/dxfwriter.h
index cd9f0bb..50d99a2 100644
--- a/lib_dxf/intern/dxfwriter.h
+++ b/lib_dxf/intern/dxfwriter.h
@@ -47,12 +47,12 @@ class dxfWriterBinary : public dxfWriter
 public:
     dxfWriterBinary( std::ofstream* stream ) : dxfWriter( stream ) {}
     virtual ~dxfWriterBinary() {}
-    virtual bool    writeString( int code, std::string text );
-    virtual bool    writeInt16( int code, int data );
-    virtual bool    writeInt32( int code, int data );
-    virtual bool    writeInt64( int code, unsigned long long int data );
-    virtual bool    writeDouble( int code, double data );
-    virtual bool    writeBool( int code, bool data );
+    virtual bool    writeString( int code, std::string text ) override;
+    virtual bool    writeInt16( int code, int data ) override;
+    virtual bool    writeInt32( int code, int data ) override;
+    virtual bool    writeInt64( int code, unsigned long long int data ) override;
+    virtual bool    writeDouble( int code, double data ) override;
+    virtual bool    writeBool( int code, bool data ) override;
 };
 
 class dxfWriterAscii : public dxfWriter
@@ -60,12 +60,12 @@ class dxfWriterAscii : public dxfWriter
 public:
     dxfWriterAscii( std::ofstream* stream ) : dxfWriter( stream ) {}
     virtual ~dxfWriterAscii() {}
-    virtual bool    writeString( int code, std::string text );
-    virtual bool    writeInt16( int code, int data );
-    virtual bool    writeInt32( int code, int data );
-    virtual bool    writeInt64( int code, unsigned long long int data );
-    virtual bool    writeDouble( int code, double data );
-    virtual bool    writeBool( int code, bool data );
+    virtual bool    writeString( int code, std::string text ) override;
+    virtual bool    writeInt16( int code, int data ) override;
+    virtual bool    writeInt32( int code, int data ) override;
+    virtual bool    writeInt64( int code, unsigned long long int data ) override;
+    virtual bool    writeDouble( int code, double data ) override;
+    virtual bool    writeBool( int code, bool data ) override;
 };
 
 #endif    // DXFWRITER_H
diff --git a/pagelayout_editor/class_pl_editor_layout.h b/pagelayout_editor/class_pl_editor_layout.h
index af7200e..ff36770 100644
--- a/pagelayout_editor/class_pl_editor_layout.h
+++ b/pagelayout_editor/class_pl_editor_layout.h
@@ -89,8 +89,7 @@ public:
     void SetBoundingBox( const EDA_RECT& aBox ) { m_BoundingBox = aBox; }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;  // overload
-
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 };
 
diff --git a/pagelayout_editor/class_pl_editor_screen.h b/pagelayout_editor/class_pl_editor_screen.h
index da22784..f19c42e 100644
--- a/pagelayout_editor/class_pl_editor_screen.h
+++ b/pagelayout_editor/class_pl_editor_screen.h
@@ -48,14 +48,14 @@ public:
 
     ~PL_EDITOR_SCREEN();
 
-    virtual int MilsToIuScalar();
+    virtual int MilsToIuScalar() override;
 
     /**
      * Function ClearUndoORRedoList
      * virtual pure in BASE_SCREEN, so it must be defined here
      */
 
-    virtual void ClearUndoORRedoList( UNDO_REDO_CONTAINER& aList, int aItemCount = -1 );
+    virtual void ClearUndoORRedoList( UNDO_REDO_CONTAINER& aList, int aItemCount = -1 ) override;
     /**
      * Function GetCurItem
      * returns the currently selected WORKSHEET_DATAITEM, overriding
diff --git a/pagelayout_editor/design_tree_frame.h b/pagelayout_editor/design_tree_frame.h
index 4789ccc..e8c9b84 100644
--- a/pagelayout_editor/design_tree_frame.h
+++ b/pagelayout_editor/design_tree_frame.h
@@ -82,7 +82,7 @@ public:
     ~DESIGN_TREE_FRAME();
 
     void    ReCreateDesignTree();
-    virtual wxSize  GetMinSize() const;
+    virtual wxSize  GetMinSize() const override;
 
     /** @return the page layout item managed by the cell
      */
diff --git a/pagelayout_editor/dialogs/dialog_new_dataitem.cpp b/pagelayout_editor/dialogs/dialog_new_dataitem.cpp
index ff597ee..4000907 100644
--- a/pagelayout_editor/dialogs/dialog_new_dataitem.cpp
+++ b/pagelayout_editor/dialogs/dialog_new_dataitem.cpp
@@ -43,8 +43,8 @@ public:
     DIALOG_NEW_DATAITEM( PL_EDITOR_FRAME* aCaller, WORKSHEET_DATAITEM* aItem );
 
 private:
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnOKClick( wxCommandEvent& event );
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnOKClick( wxCommandEvent& event ) override;
 
     void initDlg();
 };
diff --git a/pagelayout_editor/dialogs/dialogs_for_printing.cpp b/pagelayout_editor/dialogs/dialogs_for_printing.cpp
index 19cdc0e..eb3ef05 100644
--- a/pagelayout_editor/dialogs/dialogs_for_printing.cpp
+++ b/pagelayout_editor/dialogs/dialogs_for_printing.cpp
@@ -55,9 +55,9 @@ public:
         m_parent = aParent;
     }
 
-    virtual bool OnPrintPage( int aPageNum );
-    virtual bool HasPage( int aPageNum ) { return ( aPageNum <= 2 ); }
-    virtual void GetPageInfo( int* minPage, int* maxPage, int* selPageFrom, int* selPageTo );
+    virtual bool OnPrintPage( int aPageNum ) override;
+    virtual bool HasPage( int aPageNum ) override { return ( aPageNum <= 2 ); }
+    virtual void GetPageInfo( int* minPage, int* maxPage, int* selPageFrom, int* selPageTo ) override;
     void DrawPage( int aPageNum );
 };
 
@@ -77,7 +77,7 @@ public:
         m_parent = aParent;
     }
 
-    virtual bool Show( bool show )
+    virtual bool Show( bool show ) override
     {
         bool        ret;
 
diff --git a/pagelayout_editor/pl_editor.cpp b/pagelayout_editor/pl_editor.cpp
index 788f8d0..304246c 100644
--- a/pagelayout_editor/pl_editor.cpp
+++ b/pagelayout_editor/pl_editor.cpp
@@ -51,11 +51,11 @@ static struct IFACE : public KIFACE_I
         KIFACE_I( aName, aType )
     {}
 
-    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits );
+    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits ) override;
 
-    virtual void OnKifaceEnd();
+    virtual void OnKifaceEnd() override;
 
-    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 )
+    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 ) override
     {
         switch( aClassId )
         {
@@ -84,7 +84,7 @@ static struct IFACE : public KIFACE_I
      *
      * @return void* - and must be cast into the know type.
      */
-    virtual void* IfaceOrAddress( int aDataId )
+    virtual void* IfaceOrAddress( int aDataId ) override
     {
         return NULL;
     }
diff --git a/pagelayout_editor/pl_editor_frame.h b/pagelayout_editor/pl_editor_frame.h
index 220df74..d28d251 100644
--- a/pagelayout_editor/pl_editor_frame.h
+++ b/pagelayout_editor/pl_editor_frame.h
@@ -76,7 +76,7 @@ public:
     PL_EDITOR_FRAME( KIWAY* aKiway, wxWindow* aParent );
     ~PL_EDITOR_FRAME();
 
-    virtual bool OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl );
+    virtual bool OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl ) override;
 
     /**
      * Function LoadPageLayoutDescrFile
@@ -103,12 +103,12 @@ public:
     void    OnCloseWindow( wxCloseEvent& Event );
 
     // Virtual basic functions:
-    virtual void    RedrawActiveWindow( wxDC* DC, bool EraseBg );
-    virtual void    ReCreateHToolbar();
+    virtual void    RedrawActiveWindow( wxDC* DC, bool EraseBg ) override;
+    virtual void    ReCreateHToolbar() override;
 
-    virtual void SetPageSettings(const PAGE_INFO&);
-    virtual const PAGE_INFO& GetPageSettings () const;
-    virtual const wxSize GetPageSizeIU() const;
+    virtual void SetPageSettings(const PAGE_INFO&) override;
+    virtual const PAGE_INFO& GetPageSettings () const override;
+    virtual const wxSize GetPageSizeIU() const override;
 
     /**
      * Function GetZoomLevelIndicator
@@ -116,33 +116,33 @@ public:
      * level indicator in dialogs.
      * Virtual from the base class
      */
-    virtual const wxString GetZoomLevelIndicator() const;
+    virtual const wxString GetZoomLevelIndicator() const override;
 
-    virtual PL_EDITOR_SCREEN* GetScreen() const
+    virtual PL_EDITOR_SCREEN* GetScreen() const override
     {
         return (PL_EDITOR_SCREEN*) EDA_DRAW_FRAME::GetScreen();
     }
 
-    virtual const wxPoint& GetAuxOrigin() const
+    virtual const wxPoint& GetAuxOrigin() const override
     {
         static wxPoint dummy;   // ( 0,0 );
         return dummy;
     }
-    virtual void SetAuxOrigin( const wxPoint& aPosition ) {}
+    virtual void SetAuxOrigin( const wxPoint& aPosition ) override {}
 
-    virtual const wxPoint& GetGridOrigin() const
+    virtual const wxPoint& GetGridOrigin() const override
     {
         return m_grid_origin;
     }
-    virtual void SetGridOrigin( const wxPoint& aPoint )
+    virtual void SetGridOrigin( const wxPoint& aPoint ) override
     {
         m_grid_origin = aPoint;
     }
 
-    virtual const TITLE_BLOCK& GetTitleBlock() const;
-    virtual void SetTitleBlock( const TITLE_BLOCK& aTitleBlock );
+    virtual const TITLE_BLOCK& GetTitleBlock() const override;
+    virtual void SetTitleBlock( const TITLE_BLOCK& aTitleBlock ) override;
 
-    virtual void UpdateStatusBar();
+    virtual void UpdateStatusBar() override;
 
     /**
      * Must be called to initialize parameters when a new page layout
@@ -154,7 +154,7 @@ public:
      * creates or updates the right vertical toolbar.
      * @note This is currently not used.
      */
-    virtual void    ReCreateVToolbar();
+    virtual void    ReCreateVToolbar() override;
 
     /**
      * Create or update the left vertical toolbar (option toolbar
@@ -162,11 +162,11 @@ public:
      */
     void    ReCreateOptToolbar();
 
-    virtual void    ReCreateMenuBar();
-    virtual void    OnLeftClick( wxDC* aDC, const wxPoint& aMousePos );
-    virtual void    OnLeftDClick( wxDC* aDC, const wxPoint& aMousePos );
-    virtual bool    OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu );
-    virtual double  BestZoom();
+    virtual void    ReCreateMenuBar() override;
+    virtual void    OnLeftClick( wxDC* aDC, const wxPoint& aMousePos ) override;
+    virtual void    OnLeftDClick( wxDC* aDC, const wxPoint& aMousePos ) override;
+    virtual bool    OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu ) override;
+    virtual double  BestZoom() override;
 
     // Events created by clicking on the design tree list:
     void OnTreeSelection( wxTreeEvent& event );
@@ -204,9 +204,9 @@ public:
      */
     PARAM_CFG_ARRAY&    GetConfigurationSettings( void );
 
-    virtual void LoadSettings( wxConfigBase* aCfg );
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
 
-    virtual void SaveSettings( wxConfigBase* aCfg );
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     void                Process_Special_Functions( wxCommandEvent& event );
     void                OnSelectOptionToolbar( wxCommandEvent& event );
@@ -245,7 +245,7 @@ public:
      * @param aPosition The cursor position in logical (drawing) units.
      * @param aItem = NULL or pointer on a EDA_ITEM under the mouse cursor
      */
-    virtual bool OnHotKey( wxDC* aDC, int aHotkeyCode, const wxPoint& aPosition, EDA_ITEM* aItem = NULL );
+    virtual bool OnHotKey( wxDC* aDC, int aHotkeyCode, const wxPoint& aPosition, EDA_ITEM* aItem = NULL ) override;
 
     void                Process_Settings( wxCommandEvent& event );
     void                Process_Config( wxCommandEvent& event );
@@ -264,7 +264,7 @@ public:
     void                ToPrinter( wxCommandEvent& event );
 
     void                Files_io( wxCommandEvent& event );
-    virtual bool        GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 );
+    virtual bool        GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 ) override;
 
     /** Virtual function PrintPage
      * used to print a page
@@ -274,7 +274,7 @@ public:
      * @param aData = a pointer on an auxiliary data (not always used, NULL if not used)
      */
     virtual void    PrintPage( wxDC* aDC, LSET aPrintMasklayer,
-                               bool aPrintMirrorMode, void * aData );
+                               bool aPrintMirrorMode, void * aData ) override;
 
     void OnFileHistory( wxCommandEvent& event );
 
diff --git a/pagelayout_editor/pl_editor_undo_redo.cpp b/pagelayout_editor/pl_editor_undo_redo.cpp
index e6e9819..c4309f8 100644
--- a/pagelayout_editor/pl_editor_undo_redo.cpp
+++ b/pagelayout_editor/pl_editor_undo_redo.cpp
@@ -61,7 +61,7 @@ public:
     /** Get class name
      * @return  string "PL_ITEM_LAYOUT"
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return "PL_ITEM_LAYOUT";
     }
diff --git a/pagelayout_editor/properties_frame.h b/pagelayout_editor/properties_frame.h
index 18760f1..a8d564d 100644
--- a/pagelayout_editor/properties_frame.h
+++ b/pagelayout_editor/properties_frame.h
@@ -48,8 +48,8 @@ public:
     ~PROPERTIES_FRAME();
 
     // Event functions
-    virtual void OnAcceptPrms( wxCommandEvent& event );
-    virtual void OnSetDefaultValues( wxCommandEvent& event );
+    virtual void OnAcceptPrms( wxCommandEvent& event ) override;
+    virtual void OnSetDefaultValues( wxCommandEvent& event ) override;
 
 
     // Data transfert from general properties to widgets
@@ -64,7 +64,7 @@ public:
     // Data transfert from widgets in properties frame to item
     bool CopyPrmsFromPanelToItem( WORKSHEET_DATAITEM* aItem );
 
-    virtual wxSize GetMinSize() const;
+    virtual wxSize GetMinSize() const override;
 };
 
 #endif /* _PROPERTIES_FRAME_H */
diff --git a/pcb_calculator/UnitSelector.h b/pcb_calculator/UnitSelector.h
index e8ea45d..65a526b 100644
--- a/pcb_calculator/UnitSelector.h
+++ b/pcb_calculator/UnitSelector.h
@@ -70,7 +70,7 @@ public:
      * @return the scaling factor to convert users units
      * to normalized units (meter)
      */
-    virtual double GetUnitScale();
+    virtual double GetUnitScale() override;
 };
 
 class UNIT_SELECTOR_FREQUENCY: public UNIT_SELECTOR
@@ -85,7 +85,7 @@ public:
      * @return the scaling factor to convert users units
      * to normalized units (Hz)
      */
-    virtual double GetUnitScale();
+    virtual double GetUnitScale() override;
 };
 
 class UNIT_SELECTOR_ANGLE: public UNIT_SELECTOR
@@ -100,7 +100,7 @@ public:
      * @return the scaling factor to convert users units
      * to normalized units (Hz)
      */
-    virtual double GetUnitScale();
+    virtual double GetUnitScale() override;
 };
 
 class UNIT_SELECTOR_RESISTOR: public UNIT_SELECTOR
@@ -115,7 +115,7 @@ public:
      * @return the scaling factor to convert users units
      * to normalized units (Hz)
      */
-    virtual double GetUnitScale();
+    virtual double GetUnitScale() override;
 };
 
 #endif  // _UnitSelector_h_
diff --git a/pcb_calculator/attenuators/attenuator_classes.h b/pcb_calculator/attenuators/attenuator_classes.h
index a2014fa..19c3524 100644
--- a/pcb_calculator/attenuators/attenuator_classes.h
+++ b/pcb_calculator/attenuators/attenuator_classes.h
@@ -79,7 +79,7 @@ class ATTENUATOR_PI : public ATTENUATOR
 public:
     ATTENUATOR_PI();
     ~ATTENUATOR_PI(){};
-    virtual bool Calculate();
+    virtual bool Calculate() override;
 };
 
 class ATTENUATOR_TEE : public ATTENUATOR
@@ -87,7 +87,7 @@ class ATTENUATOR_TEE : public ATTENUATOR
 public:
     ATTENUATOR_TEE();
     ~ATTENUATOR_TEE(){};
-    virtual bool Calculate();
+    virtual bool Calculate() override;
 };
 
 class ATTENUATOR_BRIDGE : public ATTENUATOR
@@ -95,7 +95,7 @@ class ATTENUATOR_BRIDGE : public ATTENUATOR
 public:
     ATTENUATOR_BRIDGE();
     ~ATTENUATOR_BRIDGE(){};
-    virtual bool Calculate();
+    virtual bool Calculate() override;
 };
 
 class ATTENUATOR_SPLITTER : public ATTENUATOR
@@ -103,7 +103,7 @@ class ATTENUATOR_SPLITTER : public ATTENUATOR
 public:
     ATTENUATOR_SPLITTER();
     ~ATTENUATOR_SPLITTER(){};
-    virtual bool Calculate();
+    virtual bool Calculate() override;
 };
 
 #endif  // ATTENUATORFUNC_H
diff --git a/pcb_calculator/pcb_calculator.cpp b/pcb_calculator/pcb_calculator.cpp
index 876953f..852671b 100644
--- a/pcb_calculator/pcb_calculator.cpp
+++ b/pcb_calculator/pcb_calculator.cpp
@@ -55,11 +55,11 @@ static struct IFACE : public KIFACE_I
         KIFACE_I( aName, aType )
     {}
 
-    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits );
+    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits ) override;
 
-    virtual void OnKifaceEnd();
+    virtual void OnKifaceEnd() override;
 
-    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 )
+    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 ) override
     {
         switch( aClassId )
         {
@@ -85,7 +85,7 @@ static struct IFACE : public KIFACE_I
      *
      * @return void* - and must be cast into the know type.
      */
-    virtual void* IfaceOrAddress( int aDataId )
+    virtual void* IfaceOrAddress( int aDataId ) override
     {
         return NULL;
     }
diff --git a/pcb_calculator/pcb_calculator.h b/pcb_calculator/pcb_calculator.h
index f12b3dc..1b2b675 100644
--- a/pcb_calculator/pcb_calculator.h
+++ b/pcb_calculator/pcb_calculator.h
@@ -46,13 +46,13 @@ public:
 private:
 
     // Event handlers
-    virtual void OnClosePcbCalc( wxCloseEvent& event );
+    virtual void OnClosePcbCalc( wxCloseEvent& event ) override;
 
     // These 3 functions are called by the OnPaint event, to draw
     // icons that show the current item on the specific panels
-    virtual void OnPaintTranslinePanel( wxPaintEvent& event );
-    virtual void OnPaintAttenuatorPanel( wxPaintEvent& event );
-    virtual void OnPaintAttFormulaPanel( wxPaintEvent& event );
+    virtual void OnPaintTranslinePanel( wxPaintEvent& event ) override;
+    virtual void OnPaintAttenuatorPanel( wxPaintEvent& event ) override;
+    virtual void OnPaintAttFormulaPanel( wxPaintEvent& event ) override;
 
     // Config read-write
     void ReadConfig();
@@ -79,7 +79,7 @@ private:
      * Function OnTWCalculateButt
      * Called by clicking on the calculate button
      */
-    virtual void OnTWCalculateButt( wxCommandEvent& event );
+    virtual void OnTWCalculateButt( wxCommandEvent& event ) override;
 
     /**
      * Function TW_Init
@@ -101,8 +101,8 @@ private:
                     bool aUseInternalLayer );
 
     // Electrical spacing panel:
-    virtual void OnElectricalSpacingUnitsSelection( wxCommandEvent& event );
-    virtual void OnElectricalSpacingRefresh( wxCommandEvent& event );
+    virtual void OnElectricalSpacingUnitsSelection( wxCommandEvent& event ) override;
+    virtual void OnElectricalSpacingRefresh( wxCommandEvent& event ) override;
     void ElectricalSpacingUpdateData( double aUnitScale );
 
     // Transline functions:
@@ -110,42 +110,42 @@ private:
      * Function OnTranslineSelection
      * Called on new transmission line selection
     */
-    virtual void OnTranslineSelection( wxCommandEvent& event );
+    virtual void OnTranslineSelection( wxCommandEvent& event ) override;
 
     /**
      * Function OnTranslineAnalyse
      * Run a new analyse for the current transline with current parameters
      * and displays the electrical parmeters
      */
-    virtual void OnTranslineAnalyse( wxCommandEvent& event );
+    virtual void OnTranslineAnalyse( wxCommandEvent& event ) override;
 
     /**
      * Function OnTranslineSynthetize
      * Run a new synthezis for the current transline with current parameters
      * and displays the geometrical parmeters
      */
-    virtual void OnTranslineSynthetize( wxCommandEvent& event );
+    virtual void OnTranslineSynthetize( wxCommandEvent& event ) override;
 
     /**
      * Function OnTranslineEpsilonR_Button
      * Shows a list of current relative dielectric constant(Er)
      * and set the selected value in main dialog frame
      */
-    virtual void OnTranslineEpsilonR_Button( wxCommandEvent& event );
+    virtual void OnTranslineEpsilonR_Button( wxCommandEvent& event ) override;
 
     /**
      * Function OnTranslineTanD_Button
      * Shows a list of current dielectric loss factor (tangent delta)
      * and set the selected value in main dialog frame
      */
-    virtual void OnTranslineTanD_Button( wxCommandEvent& event );
+    virtual void OnTranslineTanD_Button( wxCommandEvent& event ) override;
 
     /**
      * Function OnTranslineRho_Button
      * Shows a list of current Specific resistance list (rho)
      * and set the selected value in main dialog frame
      */
-    virtual void OnTranslineRho_Button( wxCommandEvent& event );
+    virtual void OnTranslineRho_Button( wxCommandEvent& event ) override;
 
     /**
      * Function TranslineTypeSelection
@@ -165,25 +165,25 @@ private:
     void TransfDlgDataToTranslineParams();
 
     // Color Code panel
-    virtual void OnToleranceSelection( wxCommandEvent& event );
+    virtual void OnToleranceSelection( wxCommandEvent& event ) override;
     void ToleranceSelection( int aSelection );
 
     // Attenuators Panel
-    virtual void OnAttenuatorSelection( wxCommandEvent& event );
+    virtual void OnAttenuatorSelection( wxCommandEvent& event ) override;
     void SetAttenuator( unsigned aIdx );
-    virtual void OnCalculateAttenuator( wxCommandEvent& event );
+    virtual void OnCalculateAttenuator( wxCommandEvent& event ) override;
     void TransfPanelDataToAttenuator();
     void TransfAttenuatorDataToPanel();
     void TransfAttenuatorResultsToPanel();
 
     // Regulators Panel
-    virtual void OnRegulatorCalcButtonClick( wxCommandEvent& event );
-    virtual void OnRegulTypeSelection( wxCommandEvent& event );
-    virtual void OnRegulatorSelection( wxCommandEvent& event );
-    virtual void OnDataFileSelection( wxCommandEvent& event );
-    virtual void OnAddRegulator( wxCommandEvent& event );
-    virtual void OnEditRegulator( wxCommandEvent& event );
-    virtual void OnRemoveRegulator( wxCommandEvent& event );
+    virtual void OnRegulatorCalcButtonClick( wxCommandEvent& event ) override;
+    virtual void OnRegulTypeSelection( wxCommandEvent& event ) override;
+    virtual void OnRegulatorSelection( wxCommandEvent& event ) override;
+    virtual void OnDataFileSelection( wxCommandEvent& event ) override;
+    virtual void OnAddRegulator( wxCommandEvent& event ) override;
+    virtual void OnEditRegulator( wxCommandEvent& event ) override;
+    virtual void OnRemoveRegulator( wxCommandEvent& event ) override;
 
     /**
      * Function RegulatorPageUpdate:
@@ -239,7 +239,7 @@ public:
     bool   IsPrmSelected( enum PRMS_ID aPrmId );
 
     // Board classes panel:
-    virtual void OnBoardClassesUnitsSelection( wxCommandEvent& event );
+    virtual void OnBoardClassesUnitsSelection( wxCommandEvent& event ) override;
     void BoardClassesUpdateData( double aUnitScale );
 
 };
diff --git a/pcb_calculator/regulators_funct.cpp b/pcb_calculator/regulators_funct.cpp
index 6464966..e2e703f 100644
--- a/pcb_calculator/regulators_funct.cpp
+++ b/pcb_calculator/regulators_funct.cpp
@@ -49,7 +49,7 @@ public:
     ~DIALOG_EDITOR_DATA() {};
 
     // Event called functions:
-    virtual void OnOKClick( wxCommandEvent& event );
+    virtual void OnOKClick( wxCommandEvent& event ) override;
 
     /**
      * Function IsOK()
@@ -86,7 +86,7 @@ public:
     /**
      * called when the current regulator type is changed
      */
-    virtual void OnRegTypeSelection( wxCommandEvent& event )
+    virtual void OnRegTypeSelection( wxCommandEvent& event ) override
     {
         UpdateDialog();
     }
diff --git a/pcb_calculator/transline/c_microstrip.h b/pcb_calculator/transline/c_microstrip.h
index b3c0181..a4357c4 100644
--- a/pcb_calculator/transline/c_microstrip.h
+++ b/pcb_calculator/transline/c_microstrip.h
@@ -60,8 +60,8 @@ private:
     double atten_cond_o;        /* odd-mode conductors losses (dB) */
 
 public:
-    virtual void   analyze();
-    virtual void   synthesize();
+    virtual void   analyze() override;
+    virtual void   synthesize() override;
 
 private:
     double delta_u_thickness_single( double, double );
diff --git a/pcb_calculator/transline/coax.h b/pcb_calculator/transline/coax.h
index 7af3af4..3b248ab 100644
--- a/pcb_calculator/transline/coax.h
+++ b/pcb_calculator/transline/coax.h
@@ -40,8 +40,8 @@ private:
     double fc;                  /* Cutoff frequency for higher order modes */
 
 public:
-    virtual void   analyze();
-    virtual void   synthesize();
+    virtual void   analyze() override;
+    virtual void   synthesize() override;
 
 private:
     void   get_coax_sub();
diff --git a/pcb_calculator/transline/coplanar.h b/pcb_calculator/transline/coplanar.h
index 9b11482..45139b9 100644
--- a/pcb_calculator/transline/coplanar.h
+++ b/pcb_calculator/transline/coplanar.h
@@ -42,8 +42,8 @@ private:
     double atten_cond;          /* Loss in conductors (dB) */
 
 public:
-    virtual void analyze();
-    virtual void synthesize();
+    virtual void analyze() override;
+    virtual void synthesize() override;
 
 protected:
     bool backMetal;
diff --git a/pcb_calculator/transline/microstrip.h b/pcb_calculator/transline/microstrip.h
index 1b5ddb3..f187d16 100644
--- a/pcb_calculator/transline/microstrip.h
+++ b/pcb_calculator/transline/microstrip.h
@@ -52,8 +52,8 @@ private:
     double Z0_h_1;      /* homogeneous stripline impedance */
 
 public:
-    virtual void   analyze();
-    virtual void   synthesize();
+    virtual void   analyze() override;
+    virtual void   synthesize() override;
 
 private:
     double er_eff_freq();
diff --git a/pcb_calculator/transline/rectwaveguide.h b/pcb_calculator/transline/rectwaveguide.h
index f17ac6c..58c15a2 100644
--- a/pcb_calculator/transline/rectwaveguide.h
+++ b/pcb_calculator/transline/rectwaveguide.h
@@ -44,8 +44,8 @@ private:
     double fc10;                /* Cutoff frequency for TE10 mode */
 
 public:
-    virtual void   analyze();
-    virtual void   synthesize();
+    virtual void   analyze() override;
+    virtual void   synthesize() override;
 
 private:
     double kval_square();
diff --git a/pcb_calculator/transline/stripline.h b/pcb_calculator/transline/stripline.h
index 800f8b0..a6a0673 100644
--- a/pcb_calculator/transline/stripline.h
+++ b/pcb_calculator/transline/stripline.h
@@ -41,8 +41,8 @@ private:
     double atten_cond;          // loss in conductors (dB)
 
 public:
-    virtual void   analyze();
-    virtual void   synthesize();
+    virtual void   analyze() override;
+    virtual void   synthesize() override;
 
 private:
     double lineImpedance( double, double& );
diff --git a/pcb_calculator/transline/twistedpair.h b/pcb_calculator/transline/twistedpair.h
index 3a9ca36..a09dd3a 100644
--- a/pcb_calculator/transline/twistedpair.h
+++ b/pcb_calculator/transline/twistedpair.h
@@ -41,8 +41,8 @@ private:
     double atten_cond;          /* Loss in conductors (dB) */
 
 public:
-    virtual void analyze();
-    virtual void synthesize();
+    virtual void analyze() override;
+    virtual void synthesize() override;
 
 private:
     void calc();
diff --git a/pcbnew/block.cpp b/pcbnew/block.cpp
index 63bbe9c..0af081a 100644
--- a/pcbnew/block.cpp
+++ b/pcbnew/block.cpp
@@ -102,12 +102,12 @@ public:
 
 
 private:
-    virtual void ExecuteCommand( wxCommandEvent& event );
-    virtual void OnCancel( wxCommandEvent& event )
+    virtual void ExecuteCommand( wxCommandEvent& event ) override;
+    virtual void OnCancel( wxCommandEvent& event ) override
     {
         EndModal( wxID_CANCEL );
     }
-    virtual void checkBoxClicked( wxCommandEvent& aEvent )
+    virtual void checkBoxClicked( wxCommandEvent& aEvent ) override
     {
         if( m_Include_Modules->GetValue() )
             m_IncludeLockedModules->Enable();
diff --git a/pcbnew/class_board.cpp b/pcbnew/class_board.cpp
index 86e3cbf..e47bd14 100644
--- a/pcbnew/class_board.cpp
+++ b/pcbnew/class_board.cpp
@@ -152,7 +152,7 @@ void BOARD::Move( const wxPoint& aMoveVector )        // overload
     // here it does the moving.
     struct MOVER : public INSPECTOR
     {
-        virtual SEARCH_RESULT Inspect( EDA_ITEM* item, const void* data )
+        virtual SEARCH_RESULT Inspect( EDA_ITEM* item, const void* data ) override
         {
             BOARD_ITEM*     brd_item = (BOARD_ITEM*) item;
             const wxPoint*  vector   = (const wxPoint*) data;
@@ -1267,7 +1267,7 @@ MODULE* BOARD::FindModuleByReference( const wxString& aReference ) const
         FINDER() : found( 0 )  {}
 
         // implement interface INSPECTOR
-        virtual SEARCH_RESULT Inspect( EDA_ITEM* item, const void* data )
+        virtual SEARCH_RESULT Inspect( EDA_ITEM* item, const void* data ) override
         {
             MODULE*         module = (MODULE*) item;
             const wxString& ref    = *(const wxString*) data;
diff --git a/pcbnew/class_board.h b/pcbnew/class_board.h
index c21809f..09d1ac4 100644
--- a/pcbnew/class_board.h
+++ b/pcbnew/class_board.h
@@ -253,9 +253,9 @@ public:
     BOARD();
     ~BOARD();
 
-    virtual const wxPoint& GetPosition() const;
+    virtual const wxPoint& GetPosition() const override;
 
-    virtual void SetPosition( const wxPoint& aPos );
+    virtual void SetPosition( const wxPoint& aPos ) override;
 
     bool IsEmpty() const
     {
@@ -263,7 +263,7 @@ public:
                m_Track.GetCount() == 0 && m_Zone.GetCount() == 0;
     }
 
-    virtual void Move( const wxPoint& aMoveVector );        // overload
+    virtual void Move( const wxPoint& aMoveVector ) override;;
 
     void SetFileFormatVersionAtLoad( int aVersion ) { m_fileFormatVersionAtLoad = aVersion; }
     int GetFileFormatVersionAtLoad()  const { return m_fileFormatVersionAtLoad; }
@@ -873,11 +873,11 @@ public:
      * as long as the BOARD has not changed.  Remember, ComputeBoundingBox()'s
      * aBoardEdgesOnly argument is considered in this return value also.
      */
-    virtual const EDA_RECT GetBoundingBox() const { return m_BoundingBox; }   // override
+    virtual const EDA_RECT GetBoundingBox() const override { return m_BoundingBox; }
 
     void SetBoundingBox( const EDA_RECT& aBox ) { m_BoundingBox = aBox; }
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
     /**
      * Function Draw.
@@ -888,7 +888,7 @@ public:
      * @param aOffset = an draw offset value (default = 0,0)
      */
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
-               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset );
+               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset ) override;
 
     /**
      * Function DrawHighLight
@@ -915,7 +915,7 @@ public:
      *  else SCAN_CONTINUE, and determined by the inspector.
      */
     virtual SEARCH_RESULT Visit( INSPECTOR* inspector, const void* testData,
-                         const KICAD_T scanTypes[] );
+                         const KICAD_T scanTypes[] ) override;
 
     /**
      * Function FindModuleByReference
@@ -992,13 +992,13 @@ public:
 
     /***************************************************************************/
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "BOARD" );
     }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
 
diff --git a/pcbnew/class_board_connected_item.h b/pcbnew/class_board_connected_item.h
index eb2c4d0..a678622 100644
--- a/pcbnew/class_board_connected_item.h
+++ b/pcbnew/class_board_connected_item.h
@@ -77,7 +77,7 @@ public:
     }
 
     ///> @copydoc BOARD_ITEM::IsConnected()
-    virtual bool IsConnected() const
+    virtual bool IsConnected() const override
     {
         return true;
     }
diff --git a/pcbnew/class_dimension.h b/pcbnew/class_dimension.h
index 50a5713..df65ac9 100644
--- a/pcbnew/class_dimension.h
+++ b/pcbnew/class_dimension.h
@@ -86,16 +86,16 @@ public:
 
     int GetValue() const { return m_Value; }
 
-    virtual const wxPoint&  GetPosition() const;
+    virtual const wxPoint&  GetPosition() const override;
 
-    virtual void            SetPosition( const wxPoint& aPos );
+    virtual void            SetPosition( const wxPoint& aPos ) override;
 
     void SetTextSize( const wxSize& aTextSize )
     {
         m_Text.SetSize( aTextSize );
     }
 
-    virtual void SetLayer( LAYER_ID aLayer );
+    virtual void SetLayer( LAYER_ID aLayer ) override;
 
     void SetShape( int aShape )         { m_Shape = aShape; }
     int GetShape() const { return m_Shape; }
@@ -185,17 +185,17 @@ public:
     void            Copy( DIMENSION* source );
 
     virtual void    Draw( EDA_DRAW_PANEL* panel, wxDC* DC,
-                          GR_DRAWMODE aColorMode, const wxPoint& offset = ZeroOffset );
+                          GR_DRAWMODE aColorMode, const wxPoint& offset = ZeroOffset ) override;
 
     /**
      * Function Move
      * @param offset : moving vector
      */
-    virtual void    Move( const wxPoint& offset );
+    virtual void    Move( const wxPoint& offset ) override;
 
-    virtual void    Rotate( const wxPoint& aRotCentre, double aAngle );
+    virtual void    Rotate( const wxPoint& aRotCentre, double aAngle ) override;
 
-    virtual void    Flip( const wxPoint& aCentre );
+    virtual void    Flip( const wxPoint& aCentre ) override;
 
     /**
      * Function Mirror
@@ -206,34 +206,34 @@ public:
      */
     void            Mirror( const wxPoint& axis_pos );
 
-    virtual void    GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void    GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual bool    HitTest( const wxPoint& aPosition ) const;
+    virtual bool    HitTest( const wxPoint& aPosition ) const override;
 
     /** @copydoc BOARD_ITEM::HitTest(const EDA_RECT& aRect,
      *                               bool aContained = true, int aAccuracy ) const
      */
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "DIMENSION" );
     }
 
     // Virtual function
-    virtual const EDA_RECT    GetBoundingBox() const;
+    virtual const EDA_RECT    GetBoundingBox() const override;
 
-    virtual wxString    GetSelectMenuText() const;
+    virtual wxString    GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return add_dimension_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return add_dimension_xpm; }
 
-    virtual EDA_ITEM*   Clone() const;
+    virtual EDA_ITEM*   Clone() const override;
 
     /// @copydoc VIEW_ITEM::ViewBBox()
-    virtual const BOX2I ViewBBox() const;
+    virtual const BOX2I ViewBBox() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); }    // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 };
 
diff --git a/pcbnew/class_drawsegment.h b/pcbnew/class_drawsegment.h
index 1cf8c78..4e59421 100644
--- a/pcbnew/class_drawsegment.h
+++ b/pcbnew/class_drawsegment.h
@@ -97,8 +97,8 @@ public:
     void SetBezControl2( const wxPoint& aPoint )    { m_BezierC2 = aPoint; }
     const wxPoint& GetBezControl2() const           { return m_BezierC2; }
 
-    virtual void SetPosition( const wxPoint& aPos ) { m_Start = aPos; }     // override
-    virtual const wxPoint& GetPosition() const      { return m_Start; }     // override
+    virtual void SetPosition( const wxPoint& aPos ) override { m_Start = aPos; }
+    virtual const wxPoint& GetPosition() const override      { return m_Start; }
 
     /**
      * Function GetStart
@@ -122,7 +122,7 @@ public:
     // m_Start, m_End, and m_Angle.
     // No Set...() function for these attributes.
 
-    virtual const wxPoint GetCenter() const;        //override
+    virtual const wxPoint GetCenter() const override;
     const wxPoint& GetArcStart() const      { return m_End; }
     const wxPoint GetArcEnd() const;
 
@@ -181,20 +181,20 @@ public:
     void Copy( DRAWSEGMENT* source );
 
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC,
-               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset );
+               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset ) override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
     /** @copydoc BOARD_ITEM::HitTest(const EDA_RECT& aRect,
      *                               bool aContained = true, int aAccuracy ) const
      */
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "DRAWSEGMENT" );
     }
@@ -209,15 +209,15 @@ public:
         return GetLineLength( GetStart(), GetEnd() );
     }
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Start += aMoveVector;
         m_End   += aMoveVector;
     }
 
-    virtual void Rotate( const wxPoint& aRotCentre, double aAngle );
+    virtual void Rotate( const wxPoint& aRotCentre, double aAngle ) override;
 
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
     /**
      * Function TransformShapeWithClearanceToPolygon
@@ -236,14 +236,14 @@ public:
                                                int             aCircleToSegmentsCount,
                                                double          aCorrectionFactor ) const;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_dashed_line_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return add_dashed_line_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 };
 
diff --git a/pcbnew/class_edge_mod.h b/pcbnew/class_edge_mod.h
index f81017f..2dbb5ef 100644
--- a/pcbnew/class_edge_mod.h
+++ b/pcbnew/class_edge_mod.h
@@ -61,7 +61,7 @@ public:
 
     void Copy( EDGE_MODULE* source );           // copy structure
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Start += aMoveVector;
         m_End   += aMoveVector;
@@ -69,7 +69,7 @@ public:
     }
 
     /// Flip entity relative to aCentre
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
     void SetStart0( const wxPoint& aPoint )     { m_Start0 = aPoint; }
     const wxPoint& GetStart0() const            { return m_Start0; }
@@ -85,25 +85,25 @@ public:
 
     /* drawing functions */
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC,
-               GR_DRAWMODE aDrawMode, const wxPoint& offset = ZeroOffset );
+               GR_DRAWMODE aDrawMode, const wxPoint& offset = ZeroOffset ) override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "MGRAPHIC" );
     }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  show_mod_edge_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  show_mod_edge_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
-    virtual void Rotate( const wxPoint& aRotCentre, double aAngle );
+    virtual void Rotate( const wxPoint& aRotCentre, double aAngle ) override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
 //protected:  @todo: is it just me?
diff --git a/pcbnew/class_marker_pcb.h b/pcbnew/class_marker_pcb.h
index e4d1cf9..436d685 100644
--- a/pcbnew/class_marker_pcb.h
+++ b/pcbnew/class_marker_pcb.h
@@ -70,23 +70,23 @@ public:
 
     ~MARKER_PCB();
 
-    virtual void Move(const wxPoint& aMoveVector)
+    virtual void Move(const wxPoint& aMoveVector) override
     {
         m_Pos += aMoveVector;
     }
 
-    virtual void Rotate( const wxPoint& aRotCentre, double aAngle );
+    virtual void Rotate( const wxPoint& aRotCentre, double aAngle ) override;
 
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
-               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset )
+               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset ) override
     {
         DrawMarker( aPanel, aDC, aDrawMode, aOffset );
     }
 
-    virtual const wxPoint& GetPosition() const      { return m_Pos; }
-    virtual void SetPosition( const wxPoint& aPos ) { m_Pos = aPos; }
+    virtual const wxPoint& GetPosition() const override      { return m_Pos; }
+    virtual void SetPosition( const wxPoint& aPos ) override { m_Pos = aPos; }
 
     void SetItem( const BOARD_ITEM* aItem )
     {
@@ -98,36 +98,36 @@ public:
         return m_item;
     }
 
-    bool HitTest( const wxPoint& aPosition ) const
+    virtual bool HitTest( const wxPoint& aPosition ) const override
     {
         return HitTestMarker( aPosition );
     }
 
-    bool IsOnLayer( LAYER_ID aLayer ) const;
+    virtual bool IsOnLayer( LAYER_ID aLayer ) const override;
 
-    void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    BITMAP_DEF GetMenuImage() const { return  drc_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return drc_xpm; }
 
     ///> @copydoc VIEW_ITEM::ViewBBox()
-    virtual const BOX2I ViewBBox() const
+    virtual const BOX2I ViewBBox() const override
     {
         return GetParent()->ViewBBox();
     }
 
     ///> @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
 #if defined(DEBUG)
-    void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
     /** Get class name
      * @return  string "MARKER_PCB"
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return "MARKER_PCB";
     }
diff --git a/pcbnew/class_mire.h b/pcbnew/class_mire.h
index 12c714e..bb00181 100644
--- a/pcbnew/class_mire.h
+++ b/pcbnew/class_mire.h
@@ -56,8 +56,8 @@ public:
 
     ~PCB_TARGET();
 
-    virtual void SetPosition( const wxPoint& aPos ) { m_Pos = aPos; }
-    virtual const wxPoint& GetPosition() const      { return m_Pos; }
+    virtual void SetPosition( const wxPoint& aPos ) override { m_Pos = aPos; }
+    virtual const wxPoint& GetPosition() const override      { return m_Pos; }
 
     void SetShape( int aShape )     { m_Shape = aShape; }
     int GetShape() const            { return m_Shape; }
@@ -68,23 +68,23 @@ public:
     void SetWidth( int aWidth )     { m_Width = aWidth; }
     int GetWidth() const            { return m_Width; }
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Pos += aMoveVector;
     }
 
-    virtual void Rotate( const wxPoint& aRotCentre, double aAngle );
+    virtual void Rotate( const wxPoint& aRotCentre, double aAngle ) override;
 
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
     void Copy( PCB_TARGET* source );
 
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC,
-               GR_DRAWMODE aDrawMode, const wxPoint& offset = ZeroOffset );
+               GR_DRAWMODE aDrawMode, const wxPoint& offset = ZeroOffset ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "PCB_TARGET" );
     }
@@ -92,19 +92,19 @@ public:
     /** @copydoc BOARD_ITEM::HitTest(const EDA_RECT& aRect,
      *                               bool aContained = true, int aAccuracy ) const
      */
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const override;
 
     // Virtual function
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_mires_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_mires_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 };
 
diff --git a/pcbnew/class_module.h b/pcbnew/class_module.h
index b6a91c7..e6a4791 100644
--- a/pcbnew/class_module.h
+++ b/pcbnew/class_module.h
@@ -146,7 +146,7 @@ public:
     EDA_RECT GetFootprintRect() const;
 
     // Virtual function
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     DLIST<D_PAD>& Pads()                        { return m_Pads; }
     const DLIST<D_PAD>& Pads() const            { return m_Pads; }
@@ -157,8 +157,8 @@ public:
     DLIST<S3D_MASTER>& Models()                 { return m_3D_Drawings; }
     const DLIST<S3D_MASTER>& Models() const     { return m_3D_Drawings; }
 
-    virtual void SetPosition( const wxPoint& aPos );                        // was overload
-    virtual const wxPoint& GetPosition() const          { return m_Pos; }   // was overload
+    virtual void SetPosition( const wxPoint& aPos ) override;
+    virtual const wxPoint& GetPosition() const override { return m_Pos; }
 
     void SetOrientation( double newangle );
     double GetOrientation() const { return m_Orient; }
@@ -203,11 +203,11 @@ public:
     void IncrementFlag() { flag += 1; }
     int GetFlag() const { return flag; }
 
-    virtual void Move( const wxPoint& aMoveVector );
+    virtual void Move( const wxPoint& aMoveVector ) override;
 
-    virtual void Rotate( const wxPoint& aRotCentre, double aAngle );
+    virtual void Rotate( const wxPoint& aRotCentre, double aAngle ) override;
 
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
     /**
      * Function MoveAnchorPosition
@@ -235,7 +235,7 @@ public:
 #define MODULE_PADS_LOCKED  0x08        ///< In autoplace: module waiting for autoplace
 
 
-    virtual bool IsLocked() const
+    virtual bool IsLocked() const override
     {
         return (m_ModuleStatus & MODULE_is_LOCKED) != 0;
     }
@@ -298,7 +298,7 @@ public:
     virtual void Draw( EDA_DRAW_PANEL* aPanel,
                wxDC*           aDC,
                GR_DRAWMODE     aDrawMode,
-               const wxPoint&  aOffset = ZeroOffset );
+               const wxPoint&  aOffset = ZeroOffset ) override;
 
     /**
      * Function DrawOutlinesWhenMoving
@@ -388,14 +388,14 @@ public:
     void DrawAncre( EDA_DRAW_PANEL* panel, wxDC* DC,
                     const wxPoint& offset, int dim_ancre, GR_DRAWMODE draw_mode );
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
     /** @copydoc BOARD_ITEM::HitTest(const EDA_RECT& aRect,
      *                               bool aContained = true, int aAccuracy ) const
      */
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const override;
 
     /**
      * Function GetReference
@@ -531,18 +531,18 @@ public:
     void Add3DModel( S3D_MASTER* a3DModel );
 
     virtual SEARCH_RESULT Visit( INSPECTOR* inspector, const void* testData,
-                         const KICAD_T scanTypes[] );
+                         const KICAD_T scanTypes[] ) override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "MODULE" );
     }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return module_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return module_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
     /**
      * Function RunOnChildren
@@ -553,16 +553,16 @@ public:
     void RunOnChildren( boost::function<void (BOARD_ITEM*)> aFunction );
 
     /// @copydoc VIEW_ITEM::ViewUpdate()
-    virtual void ViewUpdate( int aUpdateFlags = KIGFX::VIEW_ITEM::ALL );
+    virtual void ViewUpdate( int aUpdateFlags = KIGFX::VIEW_ITEM::ALL ) override;
 
     /// @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
     /// @copydoc VIEW_ITEM::ViewGetLOD()
-    virtual unsigned int ViewGetLOD( int aLayer ) const;
+    virtual unsigned int ViewGetLOD( int aLayer ) const override;
 
     /// @copydoc VIEW_ITEM::ViewBBox()
-    virtual const BOX2I ViewBBox() const;
+    virtual const BOX2I ViewBBox() const override;
 
     /**
      * Function CopyNetlistSettings
@@ -629,7 +629,7 @@ public:
     const wxArrayString* GetInitialComments() const { return m_initial_comments; }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); }    // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
 private:
diff --git a/pcbnew/class_netclass.h b/pcbnew/class_netclass.h
index 8d5d4c7..4df4848 100644
--- a/pcbnew/class_netclass.h
+++ b/pcbnew/class_netclass.h
@@ -207,7 +207,7 @@ public:
         throw( IO_ERROR );
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const;     // overload
+    virtual void Show( int nestLevel, std::ostream& os ) const override;
 #endif
 };
 
diff --git a/pcbnew/class_pad.h b/pcbnew/class_pad.h
index f22171e..a48341f 100644
--- a/pcbnew/class_pad.h
+++ b/pcbnew/class_pad.h
@@ -129,8 +129,8 @@ public:
     PAD_SHAPE_T GetShape() const                { return m_padShape; }
     void SetShape( PAD_SHAPE_T aShape )         { m_padShape = aShape; m_boundingRadius = -1; }
 
-    virtual void SetPosition( const wxPoint& aPos )     { m_Pos = aPos; }   // was overload
-    virtual const wxPoint& GetPosition() const          { return m_Pos; }   // was overload
+    virtual void SetPosition( const wxPoint& aPos ) override { m_Pos = aPos; }
+    virtual const wxPoint& GetPosition() const override      { return m_Pos; }
 
     void SetY( int y )                          { m_Pos.y = y; }
     void SetX( int x )                          { m_Pos.x = x; }
@@ -153,7 +153,7 @@ public:
     void SetOffset( const wxPoint& aOffset )    { m_Offset = aOffset; }
     const wxPoint& GetOffset() const            { return m_Offset; }
 
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
     /**
      * Function SetOrientation
@@ -232,7 +232,7 @@ public:
      * @param aItem is another BOARD_CONNECTED_ITEM or NULL
      * @return int - the clearance in internal units.
      */
-    virtual int GetClearance( BOARD_CONNECTED_ITEM* aItem = NULL ) const;
+    virtual int GetClearance( BOARD_CONNECTED_ITEM* aItem = NULL ) const override;
 
    // Mask margins handling:
 
@@ -270,7 +270,7 @@ public:
 
     /* drawing functions */
     virtual void Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC,
-               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset );
+               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset ) override;
 
     /**
      * Function DrawShape
@@ -378,21 +378,21 @@ public:
     int GetSubRatsnest() const                  { return m_SubRatsnest; }
     void SetSubRatsnest( int aSubRatsnest )     { m_SubRatsnest = aSubRatsnest; }
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual bool IsOnLayer( LAYER_ID aLayer ) const
+    virtual bool IsOnLayer( LAYER_ID aLayer ) const override
     {
         return m_layerMask[aLayer];
     }
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "PAD" );
     }
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     ///> Set absolute coordinates.
     void SetDrawCoord();
@@ -407,17 +407,17 @@ public:
      */
     static int Compare( const D_PAD* padref, const D_PAD* padcmp );
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Pos += aMoveVector;
         SetLocalCoord();
     }
 
-    virtual void Rotate( const wxPoint& aRotCentre, double aAngle );
+    virtual void Rotate( const wxPoint& aRotCentre, double aAngle ) override;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return pad_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return pad_xpm; }
 
     /**
      * Function ShowPadShape
@@ -439,7 +439,7 @@ public:
      */
     void AppendConfigs( PARAM_CFG_ARRAY* aResult );
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
     /**
      * same as Clone, but returns a D_PAD item.
@@ -452,13 +452,13 @@ public:
     }
 
     /// @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
     /// @copydoc VIEW_ITEM::ViewGetLOD()
-    virtual unsigned int ViewGetLOD( int aLayer ) const;
+    virtual unsigned int ViewGetLOD( int aLayer ) const override;
 
     /// @copydoc VIEW_ITEM::ViewBBox()
-    virtual const BOX2I ViewBBox() const;
+    virtual const BOX2I ViewBBox() const override;
 
     /**
      * Function CopyNetlistSettings
@@ -473,7 +473,7 @@ public:
     void CopyNetlistSettings( D_PAD* aPad );
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); }    // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
 
diff --git a/pcbnew/class_pcb_layer_box_selector.h b/pcbnew/class_pcb_layer_box_selector.h
index e90a25c..e68f79b 100644
--- a/pcbnew/class_pcb_layer_box_selector.h
+++ b/pcbnew/class_pcb_layer_box_selector.h
@@ -71,19 +71,19 @@ public:
     void SetLayerSet( LSET aMask ) { m_layerMaskDisable = aMask; }
 
     // Reload the Layers names and bitmaps
-    virtual void Resync();
+    virtual void Resync() override;
 
 private:
     // Returns a color index from the layer id
-    virtual EDA_COLOR_T GetLayerColor( LAYER_NUM aLayer ) const;
+    virtual EDA_COLOR_T GetLayerColor( LAYER_NUM aLayer ) const override;
 
     // Returns true if the layer id is enabled (i.e. is it should be displayed)
     // Virtual function
-    virtual bool IsLayerEnabled( LAYER_NUM aLayer ) const;
+    virtual bool IsLayerEnabled( LAYER_NUM aLayer ) const override;
 
     // Returns the name of the layer id
     // Virtual function
-    virtual wxString GetLayerName( LAYER_NUM aLayer ) const;
+    virtual wxString GetLayerName( LAYER_NUM aLayer ) const override;
 
     LSET getEnabledLayers() const;
 };
diff --git a/pcbnew/class_pcb_layer_widget.h b/pcbnew/class_pcb_layer_widget.h
index fbe7e1d..ff61eac 100644
--- a/pcbnew/class_pcb_layer_widget.h
+++ b/pcbnew/class_pcb_layer_widget.h
@@ -88,11 +88,11 @@ public:
     void SetLayersManagerTabsText();
 
     //-----<implement LAYER_WIDGET abstract callback functions>-----------
-    virtual void OnLayerColorChange( int aLayer, EDA_COLOR_T aColor );
-    virtual bool OnLayerSelect( int aLayer );
-    virtual void OnLayerVisible( int aLayer, bool isVisible, bool isFinal );
-    virtual void OnRenderColorChange( int aId, EDA_COLOR_T aColor );
-    virtual void OnRenderEnable( int aId, bool isEnabled );
+    virtual void OnLayerColorChange( int aLayer, EDA_COLOR_T aColor ) override;
+    virtual bool OnLayerSelect( int aLayer ) override;
+    virtual void OnLayerVisible( int aLayer, bool isVisible, bool isFinal ) override;
+    virtual void OnRenderColorChange( int aId, EDA_COLOR_T aColor ) override;
+    virtual void OnRenderEnable( int aId, bool isEnabled ) override;
     //-----</implement LAYER_WIDGET abstract callback functions>----------
 
     /**
diff --git a/pcbnew/class_pcb_text.h b/pcbnew/class_pcb_text.h
index 89054cc..b5b8fe9 100644
--- a/pcbnew/class_pcb_text.h
+++ b/pcbnew/class_pcb_text.h
@@ -54,34 +54,34 @@ public:
         return aItem && PCB_TEXT_T == aItem->Type();
     }
 
-    virtual const wxPoint& GetPosition() const
+    virtual const wxPoint& GetPosition() const override
     {
         return m_Pos;
     }
 
-    virtual void SetPosition( const wxPoint& aPos )
+    virtual void SetPosition( const wxPoint& aPos ) override
     {
         m_Pos = aPos;
     }
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Pos += aMoveVector;
     }
 
-    virtual void Rotate( const wxPoint& aRotCentre, double aAngle );
+    virtual void Rotate( const wxPoint& aRotCentre, double aAngle ) override;
 
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
     /* duplicate structure */
     void Copy( TEXTE_PCB* source );
 
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC,
-               GR_DRAWMODE aDrawMode, const wxPoint& offset = ZeroOffset );
+               GR_DRAWMODE aDrawMode, const wxPoint& offset = ZeroOffset ) override;
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const
+    virtual bool HitTest( const wxPoint& aPosition ) const override
     {
         return TextHitTest( aPosition );
     }
@@ -89,12 +89,12 @@ public:
     /** @copydoc BOARD_ITEM::HitTest(const EDA_RECT& aRect,
      *                               bool aContained = true, int aAccuracy ) const
      */
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const override
     {
         return TextHitTest( aRect, aContained, aAccuracy );
     }
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "PTEXT" );
     }
@@ -131,16 +131,16 @@ public:
                                                int                aCircleToSegmentsCount,
                                                double             aCorrectionFactor ) const;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return add_text_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return add_text_xpm; }
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); }    // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 };
 
diff --git a/pcbnew/class_text_mod.h b/pcbnew/class_text_mod.h
index e019178..72df70e 100644
--- a/pcbnew/class_text_mod.h
+++ b/pcbnew/class_text_mod.h
@@ -73,26 +73,26 @@ public:
         return aItem && PCB_MODULE_TEXT_T == aItem->Type();
     }
 
-    virtual const wxPoint& GetPosition() const
+    virtual const wxPoint& GetPosition() const override
     {
         return m_Pos;
     }
 
-    virtual void SetPosition( const wxPoint& aPos )
+    virtual void SetPosition( const wxPoint& aPos ) override
     {
         m_Pos = aPos;
         SetLocalCoord();
     }
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Pos += aMoveVector;
         SetLocalCoord();
     }
 
-    virtual void Rotate( const wxPoint& aRotCentre, double aAngle );
+    virtual void Rotate( const wxPoint& aRotCentre, double aAngle ) override;
 
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
     /// Rotate text during module rotation transform, in footprint editor
     void RotateTransformWithModule( const wxPoint& aOffset, double aAngle );
@@ -130,7 +130,7 @@ public:
     double GetDrawRotation() const;
 
     // Virtual function
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     ///> Set absolute coordinates.
     void SetDrawCoord();
@@ -142,7 +142,7 @@ public:
     virtual void Draw( EDA_DRAW_PANEL* panel,
                wxDC*           DC,
                GR_DRAWMODE     aDrawMode,
-               const wxPoint&  offset = ZeroOffset );
+               const wxPoint&  offset = ZeroOffset ) override;
 
     /**
      * Function DrawUmbilical
@@ -158,31 +158,31 @@ public:
                         GR_DRAWMODE     aDrawMode,
                         const wxPoint&  aOffset = ZeroOffset );
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "MTEXT" );
     }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return footprint_text_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return footprint_text_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
-    virtual wxString GetShownText() const;
+    virtual wxString GetShownText() const override;
 
     /// @copydoc VIEW_ITEM::ViewBBox()
-    virtual const BOX2I ViewBBox() const;
+    virtual const BOX2I ViewBBox() const override;
 
     /// @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); }    // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
 private:
diff --git a/pcbnew/class_track.h b/pcbnew/class_track.h
index 3ff674b..20e4fb4 100644
--- a/pcbnew/class_track.h
+++ b/pcbnew/class_track.h
@@ -97,18 +97,18 @@ public:
     TRACK* Next() const { return static_cast<TRACK*>( Pnext ); }
     TRACK* Back() const { return static_cast<TRACK*>( Pback ); }
 
-    virtual void Move( const wxPoint& aMoveVector )
+    virtual void Move( const wxPoint& aMoveVector ) override
     {
         m_Start += aMoveVector;
         m_End   += aMoveVector;
     }
 
-    virtual void Rotate( const wxPoint& aRotCentre, double aAngle );
+    virtual void Rotate( const wxPoint& aRotCentre, double aAngle ) override;
 
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
-    virtual void SetPosition( const wxPoint& aPos )     { m_Start = aPos; }     // was overload
-    virtual const wxPoint& GetPosition() const          { return m_Start; }     // was overload
+    virtual void SetPosition( const wxPoint& aPos ) override     { m_Start = aPos; }
+    virtual const wxPoint& GetPosition() const override         { return m_Start; }
 
     void SetWidth( int aWidth )                 { m_Width = aWidth; }
     int GetWidth() const                        { return m_Width; }
@@ -129,7 +129,7 @@ public:
             return m_End;
     }
 
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
     /**
      * Function GetBestInsertPoint
@@ -163,7 +163,7 @@ public:
 
     /* Display on screen: */
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC,
-               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset );
+               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset ) override;
 
     /**
      * Function TransformShapeWithClearanceToPolygon
@@ -204,7 +204,7 @@ public:
      */
     bool IsNull();
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
     /**
      * Function ShowWidth
@@ -213,15 +213,15 @@ public:
     wxString ShowWidth() const;
 
     virtual SEARCH_RESULT Visit( INSPECTOR* inspector, const void* testData,
-                         const KICAD_T scanTypes[] );
+                         const KICAD_T scanTypes[] ) override;
 
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
     /** @copydoc BOARD_ITEM::HitTest(const EDA_RECT& aRect,
      *                               bool aContained = true, int aAccuracy ) const
      */
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const override;
 
     /**
      * Function GetVia
@@ -275,7 +275,7 @@ public:
      */
     int GetEndSegments( int NbSegm, TRACK** StartTrack, TRACK** EndTrack );
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "TRACK" );
     }
@@ -289,22 +289,22 @@ public:
      * @param aItem is another BOARD_CONNECTED_ITEM or NULL
      * @return int - the clearance in internal units.
      */
-    virtual int GetClearance( BOARD_CONNECTED_ITEM* aItem = NULL ) const;
+    virtual int GetClearance( BOARD_CONNECTED_ITEM* aItem = NULL ) const override;
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  showtrack_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  showtrack_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
     /// @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
     /// @copydoc VIEW_ITEM::ViewGetLOD()
-    virtual unsigned int ViewGetLOD( int aLayer ) const;
+    virtual unsigned int ViewGetLOD( int aLayer ) const override;
 
 #if defined (DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); }    // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 
     /**
      * Function ShowState
@@ -352,24 +352,24 @@ public:
 
     // Do not create a copy constructor.  The one generated by the compiler is adequate.
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "ZONE" );
     }
 
     SEGZONE* Next() const { return static_cast<SEGZONE*>( Pnext ); }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC,
-               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset );
+               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset ) override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_zone_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return  add_zone_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
 protected:
-    virtual void GetMsgPanelInfoBase( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfoBase( std::vector< MSG_PANEL_ITEM >& aList ) override;
 };
 
 
@@ -386,11 +386,11 @@ public:
     // Do not create a copy constructor.  The one generated by the compiler is adequate.
 
     virtual void Draw( EDA_DRAW_PANEL* panel, wxDC* DC,
-               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset );
+               GR_DRAWMODE aDrawMode, const wxPoint& aOffset = ZeroOffset ) override;
 
-    virtual bool IsOnLayer( LAYER_ID aLayer ) const;
+    virtual bool IsOnLayer( LAYER_ID aLayer ) const override;
 
-    virtual LSET GetLayerSet() const;
+    virtual LSET GetLayerSet() const override;
 
     /**
      * Function SetLayerPair
@@ -410,31 +410,31 @@ public:
      */
     void LayerPair( LAYER_ID* top_layer, LAYER_ID* bottom_layer ) const;
 
-    virtual const wxPoint& GetPosition() const  {  return m_Start; }       // was overload
-    virtual void SetPosition( const wxPoint& aPoint ) { m_Start = aPoint;  m_End = aPoint; }    // was overload
+    virtual const wxPoint& GetPosition() const override { return m_Start; }
+    virtual void SetPosition( const wxPoint& aPoint ) override { m_Start = aPoint;  m_End = aPoint; }
 
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const override;
 
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "VIA" );
     }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return via_sketch_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return via_sketch_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
     /// @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
 #if defined (DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); }    // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
     VIATYPE_T GetViaType() const          { return m_ViaType; }
@@ -475,7 +475,7 @@ public:
     bool IsDrillDefault() const { return m_Drill <= 0; }
 
 protected:
-    virtual void GetMsgPanelInfoBase( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfoBase( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
 private:
     /// The bottom layer of the via (the top layer is in m_Layer)
diff --git a/pcbnew/class_zone.h b/pcbnew/class_zone.h
index 1e711a5..a3415e1 100644
--- a/pcbnew/class_zone.h
+++ b/pcbnew/class_zone.h
@@ -89,8 +89,8 @@ public:
      * Function GetPosition
      * @return a wxPoint, position of the first point of the outline
      */
-    virtual const wxPoint& GetPosition() const;             // was overload
-    virtual void SetPosition( const wxPoint& aPos )     {}  // was overload
+    virtual const wxPoint& GetPosition() const override;
+    virtual void SetPosition( const wxPoint& aPos ) override {}
 
     /**
      * Function SetPriority
@@ -111,7 +111,7 @@ public:
      */
     void Copy( ZONE_CONTAINER* src );
 
-    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList );
+    virtual void GetMsgPanelInfo( std::vector< MSG_PANEL_ITEM >& aList ) override;
 
     /**
      * Function Draw
@@ -124,7 +124,7 @@ public:
     virtual void Draw( EDA_DRAW_PANEL* panel,
                wxDC*           DC,
                GR_DRAWMODE     aDrawMode,
-               const wxPoint&  offset = ZeroOffset );
+               const wxPoint&  offset = ZeroOffset ) override;
 
     /**
      * Function DrawDrawFilledArea
@@ -154,9 +154,9 @@ public:
     /** Function GetBoundingBox (virtual)
      * @return an EDA_RECT that is the bounding box of the zone outline
      */
-    virtual const EDA_RECT GetBoundingBox() const;
+    virtual const EDA_RECT GetBoundingBox() const override;
 
-    virtual int GetClearance( BOARD_CONNECTED_ITEM* aItem = NULL ) const;
+    virtual int GetClearance( BOARD_CONNECTED_ITEM* aItem = NULL ) const override;
 
     /**
      * Function TestForCopperIslandAndRemoveInsulatedIslands
@@ -238,7 +238,7 @@ public:
      * @param aPosition the wxPoint to test
      * @return bool - true if a hit, else false
      */
-    virtual bool HitTest( const wxPoint& aPosition ) const;
+    virtual bool HitTest( const wxPoint& aPosition ) const override;
 
     /**
      * Function HitTest
@@ -372,7 +372,7 @@ public:
     /** @copydoc BOARD_ITEM::HitTest(const EDA_RECT& aRect,
      *                               bool aContained = true, int aAccuracy ) const
      */
-    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const;
+    virtual bool HitTest( const EDA_RECT& aRect, bool aContained = true, int aAccuracy = 0 ) const override;
 
     /**
      * Function FillZoneAreasWithSegments
@@ -399,7 +399,7 @@ public:
      * Move the outlines
      * @param offset = moving vector
      */
-    virtual void Move( const wxPoint& offset );
+    virtual void Move( const wxPoint& offset ) override;
 
     /**
      * Function MoveEdge
@@ -415,7 +415,7 @@ public:
      * @param centre = rot centre
      * @param angle = in 0.1 degree
      */
-    virtual void Rotate( const wxPoint& centre, double angle );
+    virtual void Rotate( const wxPoint& centre, double angle ) override;
 
     /**
      * Function Flip
@@ -423,7 +423,7 @@ public:
      * (like Mirror() but changes layer)
      * @param aCentre - the rotation point.
      */
-    virtual void Flip( const wxPoint& aCentre );
+    virtual void Flip( const wxPoint& aCentre ) override;
 
     /**
      * Function Mirror
@@ -438,7 +438,7 @@ public:
      * returns the class name.
      * @return wxString
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return wxT( "ZONE_CONTAINER" );
     }
@@ -559,11 +559,11 @@ public:
         m_FillSegmList.insert( m_FillSegmList.end(), aSegments.begin(), aSegments.end() );
     }
 
-    virtual wxString GetSelectMenuText() const;
+    virtual wxString GetSelectMenuText() const override;
 
-    virtual BITMAP_DEF GetMenuImage() const { return  add_zone_xpm; }
+    virtual BITMAP_DEF GetMenuImage() const override { return add_zone_xpm; }
 
-    virtual EDA_ITEM* Clone() const;
+    virtual EDA_ITEM* Clone() const override;
 
     /**
      * Accessors to parameters used in Keepout zones:
@@ -579,7 +579,7 @@ public:
     void SetDoNotAllowTracks( bool aEnable ) { m_doNotAllowTracks = aEnable; }
 
 #if defined(DEBUG)
-    virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); }    // override
+    virtual void Show( int nestLevel, std::ostream& os ) const override { ShowDummy( os ); }
 #endif
 
 
diff --git a/pcbnew/collectors.h b/pcbnew/collectors.h
index 81b11fc..39785df 100644
--- a/pcbnew/collectors.h
+++ b/pcbnew/collectors.h
@@ -353,7 +353,7 @@ public:
      * @return SEARCH_RESULT - SEARCH_QUIT if the Iterator is to stop the scan,
      *   else SCAN_CONTINUE;
      */
-    virtual SEARCH_RESULT Inspect( EDA_ITEM* testItem, const void* testData );
+    virtual SEARCH_RESULT Inspect( EDA_ITEM* testItem, const void* testData ) override;
 
 
     /**
@@ -446,7 +446,7 @@ public:
      * Function IsLayerLocked
      * @return bool - true if the given layer is locked, else false.
      */
-    virtual bool IsLayerLocked( LAYER_ID aLayerId ) const
+    virtual bool IsLayerLocked( LAYER_ID aLayerId ) const override
     {
         return m_LayerLocked[aLayerId];
     }
@@ -460,7 +460,7 @@ public:
      * Function IsLayerVisible
      * @return bool - true if the given layer is visible, else false.
      */
-    virtual bool IsLayerVisible( LAYER_ID aLayerId ) const
+    virtual bool IsLayerVisible( LAYER_ID aLayerId ) const override
     {
         return m_LayerVisible[aLayerId];
     }
@@ -474,24 +474,24 @@ public:
      * Function IgnoreLockedLayers
      * @return bool - true if should ignore locked layers, else false.
      */
-    virtual bool IgnoreLockedLayers() const         { return m_IgnoreLockedLayers; }
-    void SetIgnoreLockedLayers( bool ignore )       { m_IgnoreLockedLayers = ignore; }
+    virtual bool IgnoreLockedLayers() const override { return m_IgnoreLockedLayers; }
+    void SetIgnoreLockedLayers( bool ignore )        { m_IgnoreLockedLayers = ignore; }
 
 
     /**
      * Function IgnoredNonVisibleLayers
      * @return bool - true if should ignore non-visible layers, else false.
      */
-    virtual bool IgnoreNonVisibleLayers() const     { return m_IgnoreNonVisibleLayers; }
-    void SetIgnoreNonVisibleLayers( bool ignore )   { m_IgnoreLockedLayers = ignore; }
+    virtual bool IgnoreNonVisibleLayers() const override { return m_IgnoreNonVisibleLayers; }
+    void SetIgnoreNonVisibleLayers( bool ignore )        { m_IgnoreLockedLayers = ignore; }
 
 
     /**
      * Function GetPreferredLayer
      * @return int - the preferred layer for HitTest()ing.
      */
-    virtual LAYER_ID GetPreferredLayer() const     { return m_PreferredLayer; }
-    void SetPreferredLayer( LAYER_ID aLayer )      { m_PreferredLayer = aLayer; }
+    virtual LAYER_ID GetPreferredLayer() const override { return m_PreferredLayer; }
+    void SetPreferredLayer( LAYER_ID aLayer )           { m_PreferredLayer = aLayer; }
 
 
     /**
@@ -499,15 +499,15 @@ public:
      * provides wildcard behavior regarding the preferred layer.
      * @return bool - true if should ignore preferred layer, else false.
      */
-    virtual bool IgnorePreferredLayer() const       { return  m_IgnorePreferredLayer; }
-    void SetIgnorePreferredLayer( bool ignore )     { m_IgnorePreferredLayer = ignore; }
+    virtual bool IgnorePreferredLayer() const override { return  m_IgnorePreferredLayer; }
+    void SetIgnorePreferredLayer( bool ignore )        { m_IgnorePreferredLayer = ignore; }
 
 
     /**
      * Function IgnoreLockedItems
      * @return bool - true if should ignore locked items, else false.
      */
-    virtual bool IgnoreLockedItems() const          { return m_IgnoreLockedItems; }
+    virtual bool IgnoreLockedItems() const override { return m_IgnoreLockedItems; }
     void SetIgnoreLockedItems( bool ignore )        { m_IgnoreLockedItems = ignore; }
 
 
@@ -517,72 +517,72 @@ public:
      * included.
      * @return bool - true if should include, else false.
      */
-    virtual bool IncludeSecondary() const  { return m_IncludeSecondary; }
-    void SetIncludeSecondary( bool include ) { m_IncludeSecondary = include; }
+    virtual bool IncludeSecondary() const override { return m_IncludeSecondary; }
+    void SetIncludeSecondary( bool include )       { m_IncludeSecondary = include; }
 
 
     /**
      * Function IgnoreMTextsMarkedNoShow
      * @return bool - true if MTexts marked as "no show" should be ignored.
      */
-    virtual bool IgnoreMTextsMarkedNoShow() const { return m_IgnoreMTextsMarkedNoShow; }
-    void SetIgnoreMTextsMarkedNoShow( bool ignore ) { m_IgnoreMTextsMarkedNoShow = ignore; }
+    virtual bool IgnoreMTextsMarkedNoShow() const override { return m_IgnoreMTextsMarkedNoShow; }
+    void SetIgnoreMTextsMarkedNoShow( bool ignore )        { m_IgnoreMTextsMarkedNoShow = ignore; }
 
     /**
      * Function IgnoreMTextsOnCu
      * @return bool - true if should ignore MTexts on back layers
      */
-    virtual bool IgnoreMTextsOnBack() const { return m_IgnoreMTextsOnBack; }
-    void SetIgnoreMTextsOnBack( bool ignore ) { m_IgnoreMTextsOnBack = ignore; }
+    virtual bool IgnoreMTextsOnBack() const override { return m_IgnoreMTextsOnBack; }
+    void SetIgnoreMTextsOnBack( bool ignore )        { m_IgnoreMTextsOnBack = ignore; }
 
     /**
      * Function IgnoreMTextsOnFront
      * @return bool - true if should ignore MTexts on front layers
      */
-    virtual bool IgnoreMTextsOnFront() const { return m_IgnoreMTextsOnFront; }
-    void SetIgnoreMTextsOnFront( bool ignore ) { m_IgnoreMTextsOnFront = ignore; }
+    virtual bool IgnoreMTextsOnFront() const override { return m_IgnoreMTextsOnFront; }
+    void SetIgnoreMTextsOnFront( bool ignore )        { m_IgnoreMTextsOnFront = ignore; }
 
     /**
      * Function IgnoreModulesOnBack
      * @return bool - true if should ignore MODULEs on the back side
      */
-    virtual bool IgnoreModulesOnBack() const { return m_IgnoreModulesOnBack; }
-    void SetIgnoreModulesOnBack( bool ignore ) { m_IgnoreModulesOnBack = ignore; }
+    virtual bool IgnoreModulesOnBack() const override { return m_IgnoreModulesOnBack; }
+    void SetIgnoreModulesOnBack( bool ignore )        { m_IgnoreModulesOnBack = ignore; }
 
     /**
      * Function IgnoreModulesOnFront
      * @return bool - true if should ignore MODULEs on component layer.
      */
-    virtual bool IgnoreModulesOnFront() const { return m_IgnoreModulesOnFront; }
-    void SetIgnoreModulesOnFront( bool ignore ) { m_IgnoreModulesOnFront = ignore; }
+    virtual bool IgnoreModulesOnFront() const override { return m_IgnoreModulesOnFront; }
+    void SetIgnoreModulesOnFront( bool ignore )        { m_IgnoreModulesOnFront = ignore; }
 
     /**
      * Function IgnorePadsOnBack
      * @return bool - true if should ignore Pads on Back Side.
      */
-    virtual bool IgnorePadsOnBack() const { return m_IgnorePadsOnBack; }
-    void SetIgnorePadsOnBack(bool ignore) { m_IgnorePadsOnBack = ignore; }
+    virtual bool IgnorePadsOnBack() const override { return m_IgnorePadsOnBack; }
+    void SetIgnorePadsOnBack(bool ignore)          { m_IgnorePadsOnBack = ignore; }
 
     /**
      * Function IgnorePadsOnFront
      * @return bool - true if should ignore PADSs on Front Side.
      */
-    virtual bool IgnorePadsOnFront() const { return m_IgnorePadsOnFront; }
-    void SetIgnorePadsOnFront(bool ignore) { m_IgnorePadsOnFront = ignore; }
+    virtual bool IgnorePadsOnFront() const override { return m_IgnorePadsOnFront; }
+    void SetIgnorePadsOnFront(bool ignore)          { m_IgnorePadsOnFront = ignore; }
 
     /**
      * Function IgnoreModulesVals
      * @return bool - true if should ignore modules values.
      */
-    virtual bool IgnoreModulesVals() const { return m_IgnoreModulesVals; }
-    void SetIgnoreModulesVals(bool ignore) { m_IgnoreModulesVals = ignore; }
+    virtual bool IgnoreModulesVals() const override { return m_IgnoreModulesVals; }
+    void SetIgnoreModulesVals(bool ignore)          { m_IgnoreModulesVals = ignore; }
 
     /**
      * Function IgnoreModulesRefs
      * @return bool - true if should ignore modules references.
      */
-    virtual bool IgnoreModulesRefs() const { return m_IgnoreModulesRefs; }
-    void SetIgnoreModulesRefs(bool ignore) { m_IgnoreModulesRefs = ignore; }
+    virtual bool IgnoreModulesRefs() const override { return m_IgnoreModulesRefs; }
+    void SetIgnoreModulesRefs(bool ignore)          { m_IgnoreModulesRefs = ignore; }
 };
 
 
@@ -621,7 +621,7 @@ public:
      * @return SEARCH_RESULT - SEARCH_QUIT if the Iterator is to stop the scan,
      *   else SCAN_CONTINUE;
      */
-    virtual SEARCH_RESULT Inspect( EDA_ITEM* testItem, const void* testData );
+    virtual SEARCH_RESULT Inspect( EDA_ITEM* testItem, const void* testData ) override;
 
 
     /**
diff --git a/pcbnew/dialogs/dialog_SVG_print.cpp b/pcbnew/dialogs/dialog_SVG_print.cpp
index d0973ea..fdcd671 100644
--- a/pcbnew/dialogs/dialog_SVG_print.cpp
+++ b/pcbnew/dialogs/dialog_SVG_print.cpp
@@ -67,12 +67,12 @@ private:
 
     void initDialog();
 
-    virtual void OnCloseWindow( wxCloseEvent& event );
-    virtual void OnButtonPlot( wxCommandEvent& event );
+    virtual void OnCloseWindow( wxCloseEvent& event ) override;
+    virtual void OnButtonPlot( wxCommandEvent& event ) override;
 
-    virtual void OnButtonCloseClick( wxCommandEvent& event );
+    virtual void OnButtonCloseClick( wxCommandEvent& event ) override;
 
-    virtual void OnOutputDirectoryBrowseClicked( wxCommandEvent& event );
+    virtual void OnOutputDirectoryBrowseClicked( wxCommandEvent& event ) override;
     void SetPenWidth();
     void ExportSVGFile( bool aOnlyOneFile );
 
diff --git a/pcbnew/dialogs/dialog_cleaning_options.h b/pcbnew/dialogs/dialog_cleaning_options.h
index 8b7ecb6..64e3b30 100644
--- a/pcbnew/dialogs/dialog_cleaning_options.h
+++ b/pcbnew/dialogs/dialog_cleaning_options.h
@@ -43,11 +43,11 @@ public:
     }
 
 private:
-        virtual void OnCancelClick( wxCommandEvent& event )
+        virtual void OnCancelClick( wxCommandEvent& event ) override
         {
             EndModal( wxID_CANCEL );
         }
-        virtual void OnOKClick( wxCommandEvent& event )
+        virtual void OnOKClick( wxCommandEvent& event ) override
         {
             GetOpts( );
             EndModal( wxID_OK );
diff --git a/pcbnew/dialogs/dialog_copper_zones.cpp b/pcbnew/dialogs/dialog_copper_zones.cpp
index 1b6beca..5ba91ea 100644
--- a/pcbnew/dialogs/dialog_copper_zones.cpp
+++ b/pcbnew/dialogs/dialog_copper_zones.cpp
@@ -83,10 +83,10 @@ private:
      */
     void initDialog();
 
-    virtual void OnButtonOkClick( wxCommandEvent& event );
-    virtual void OnButtonCancelClick( wxCommandEvent& event );
-    virtual void OnClose( wxCloseEvent& event );
-    virtual void OnCornerSmoothingModeChoice( wxCommandEvent& event );
+    virtual void OnButtonOkClick( wxCommandEvent& event ) override;
+    virtual void OnButtonCancelClick( wxCommandEvent& event ) override;
+    virtual void OnClose( wxCloseEvent& event ) override;
+    virtual void OnCornerSmoothingModeChoice( wxCommandEvent& event ) override;
 
     /**
      * Function AcceptOptions
@@ -96,10 +96,10 @@ private:
      */
     bool AcceptOptions( bool aPromptForErrors, bool aUseExportableSetupOnly = false );
 
-    virtual void OnNetSortingOptionSelected( wxCommandEvent& event );
-    virtual void ExportSetupToOtherCopperZones( wxCommandEvent& event );
-    virtual void OnPadsInZoneClick( wxCommandEvent& event );
-    virtual void OnRunFiltersButtonClick( wxCommandEvent& event );
+    virtual void OnNetSortingOptionSelected( wxCommandEvent& event ) override;
+    virtual void ExportSetupToOtherCopperZones( wxCommandEvent& event ) override;
+    virtual void OnPadsInZoneClick( wxCommandEvent& event ) override;
+    virtual void OnRunFiltersButtonClick( wxCommandEvent& event ) override;
 
 
     void buildAvailableListOfNets();
diff --git a/pcbnew/dialogs/dialog_create_array.h b/pcbnew/dialogs/dialog_create_array.h
index b0148af..0ca2aa4 100644
--- a/pcbnew/dialogs/dialog_create_array.h
+++ b/pcbnew/dialogs/dialog_create_array.h
@@ -262,9 +262,9 @@ protected:
         int     m_numberingOffsetX, m_numberingOffsetY;
         ARRAY_NUMBERING_TYPE_T m_priAxisNumType, m_secAxisNumType;
 
-        virtual void        TransformItem( int n, BOARD_ITEM* item, const wxPoint& rotPoint ) const;
-        virtual int         GetArraySize() const;
-        virtual wxString    GetItemNumber( int n ) const;
+        virtual void        TransformItem( int n, BOARD_ITEM* item, const wxPoint& rotPoint ) const override;
+        virtual int         GetArraySize() const override;
+        virtual wxString    GetItemNumber( int n ) const override;
 
 private:
         wxPoint getGridCoords( int n ) const;
@@ -288,9 +288,9 @@ private:
         ARRAY_NUMBERING_TYPE_T m_numberingType;
         long m_numberingOffset;
 
-        virtual void        TransformItem( int n, BOARD_ITEM* item, const wxPoint& rotPoint ) const;
-        virtual int         GetArraySize() const;
-        virtual wxString    GetItemNumber( int n ) const;
+        virtual void        TransformItem( int n, BOARD_ITEM* item, const wxPoint& rotPoint ) const override;
+        virtual int         GetArraySize() const override;
+        virtual wxString    GetItemNumber( int n ) const override;
     };
 
     // Constructor and destructor
@@ -311,9 +311,9 @@ private:
     const wxPoint m_originalItemPosition;
 
     // Event callbacks
-    virtual void    OnParameterChanged( wxCommandEvent& event );
-    virtual void    OnCancelClick( wxCommandEvent& event );
-    virtual void    OnOkClick( wxCommandEvent& event );
+    virtual void    OnParameterChanged( wxCommandEvent& event ) override;
+    virtual void    OnCancelClick( wxCommandEvent& event ) override;
+    virtual void    OnOkClick( wxCommandEvent& event ) override;
 
     // Internal callback handlers
     void setControlEnablement();
diff --git a/pcbnew/dialogs/dialog_design_rules.h b/pcbnew/dialogs/dialog_design_rules.h
index 0027eb1..cc8aae2 100644
--- a/pcbnew/dialogs/dialog_design_rules.h
+++ b/pcbnew/dialogs/dialog_design_rules.h
@@ -83,44 +83,44 @@ private:
     std::vector <int> m_TracksWidthList;
 
 private:
-    virtual void OnNetClassesNameLeftClick( wxGridEvent& event ) { event.Skip(); }
-    virtual void OnNetClassesNameRightClick( wxGridEvent& event ) { event.Skip(); }
-    virtual void OnCancelButtonClick( wxCommandEvent& event );
-    virtual void OnOkButtonClick( wxCommandEvent& event );
-    virtual void OnAddNetclassClick( wxCommandEvent& event );
-    virtual void OnRemoveNetclassClick( wxCommandEvent& event );
+    virtual void OnNetClassesNameLeftClick( wxGridEvent& event ) override { event.Skip(); }
+    virtual void OnNetClassesNameRightClick( wxGridEvent& event ) override { event.Skip(); }
+    virtual void OnCancelButtonClick( wxCommandEvent& event ) override;
+    virtual void OnOkButtonClick( wxCommandEvent& event ) override;
+    virtual void OnAddNetclassClick( wxCommandEvent& event ) override;
+    virtual void OnRemoveNetclassClick( wxCommandEvent& event ) override;
 
     /*
      * Called on "Move Up" button click
      * the selected(s) rules are moved up
      * The default netclass is always the first rule
      */
-    virtual void OnMoveUpSelectedNetClass( wxCommandEvent& event );
+    virtual void OnMoveUpSelectedNetClass( wxCommandEvent& event ) override;
 
     /*
      * Called on the left Choice Box selection
      */
-    virtual void OnLeftCBSelection( wxCommandEvent& event );
+    virtual void OnLeftCBSelection( wxCommandEvent& event ) override;
 
     /*
      * Called on the Right Choice Box selection
      */
-    virtual void OnRightCBSelection( wxCommandEvent& event );
+    virtual void OnRightCBSelection( wxCommandEvent& event ) override;
 
-    virtual void OnRightToLeftCopyButton( wxCommandEvent& event );
-    virtual void OnLeftToRightCopyButton( wxCommandEvent& event );
+    virtual void OnRightToLeftCopyButton( wxCommandEvent& event ) override;
+    virtual void OnLeftToRightCopyButton( wxCommandEvent& event ) override;
 
     /*
      * Called on clicking the left "select all" button:
      * select all items of the left netname list list box
      */
-    virtual void OnLeftSelectAllButton( wxCommandEvent& event );
+    virtual void OnLeftSelectAllButton( wxCommandEvent& event ) override;
 
     /*
      * Called on clicking the right "select all" button:
      * select all items of the right netname list list box
      */
-    virtual void OnRightSelectAllButton( wxCommandEvent& event );
+    virtual void OnRightSelectAllButton( wxCommandEvent& event ) override;
 
     /*
      * Function TestDataValidity
diff --git a/pcbnew/dialogs/dialog_design_rules_aux_helper_class.h b/pcbnew/dialogs/dialog_design_rules_aux_helper_class.h
index bc8af25..ec6c4ee 100644
--- a/pcbnew/dialogs/dialog_design_rules_aux_helper_class.h
+++ b/pcbnew/dialogs/dialog_design_rules_aux_helper_class.h
@@ -58,7 +58,7 @@ public:
      * Function OnGetItemText
      * is an overloaded method needed by wxListCtrl with wxLC_VIRTUAL options
      */
-    virtual wxString OnGetItemText( long item, long column ) const;
+    virtual wxString OnGetItemText( long item, long column ) const override;
 
     /**
      * Function SetRowItems
diff --git a/pcbnew/dialogs/dialog_display_options.h b/pcbnew/dialogs/dialog_display_options.h
index 7b3ad7b..179c518 100644
--- a/pcbnew/dialogs/dialog_display_options.h
+++ b/pcbnew/dialogs/dialog_display_options.h
@@ -37,7 +37,7 @@ private:
 public:
    DIALOG_DISPLAY_OPTIONS( PCB_EDIT_FRAME* parent );
    ~DIALOG_DISPLAY_OPTIONS( ) { };
-   virtual void OnOkClick( wxCommandEvent& event );
-   virtual void OnCancelClick( wxCommandEvent& event );
+   virtual void OnOkClick( wxCommandEvent& event ) override;
+   virtual void OnCancelClick( wxCommandEvent& event ) override;
 };
 
diff --git a/pcbnew/dialogs/dialog_drc.h b/pcbnew/dialogs/dialog_drc.h
index 7ad3d95..bbe23c9 100644
--- a/pcbnew/dialogs/dialog_drc.h
+++ b/pcbnew/dialogs/dialog_drc.h
@@ -74,44 +74,44 @@ private:
     void SetDrcParmeters( );
 
     /// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_CHECKBOX
-    virtual void OnReportCheckBoxClicked( wxCommandEvent& event );
+    virtual void OnReportCheckBoxClicked( wxCommandEvent& event ) override;
 
     /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_BUTTON_BROWSE_RPT_FILE
-    virtual void OnButtonBrowseRptFileClick( wxCommandEvent& event );
+    virtual void OnButtonBrowseRptFileClick( wxCommandEvent& event ) override;
 
     /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_STARTDRC
-    virtual void OnStartdrcClick( wxCommandEvent& event );
+    virtual void OnStartdrcClick( wxCommandEvent& event ) override;
 
     /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_LIST_UNCONNECTED
-    virtual void OnListUnconnectedClick( wxCommandEvent& event );
+    virtual void OnListUnconnectedClick( wxCommandEvent& event ) override;
 
     /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_DELETE_ALL
-    virtual void OnDeleteAllClick( wxCommandEvent& event );
+    virtual void OnDeleteAllClick( wxCommandEvent& event ) override;
 
     /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_DELETE_ONE
-    virtual void OnDeleteOneClick( wxCommandEvent& event );
+    virtual void OnDeleteOneClick( wxCommandEvent& event ) override;
 
     /// wxEVT_LEFT_DCLICK event handler for ID_CLEARANCE_LIST
-    virtual void OnLeftDClickClearance( wxMouseEvent& event );
+    virtual void OnLeftDClickClearance( wxMouseEvent& event ) override;
 
     /// wxEVT_RIGHT_UP event handler for ID_CLEARANCE_LIST
-    virtual void OnRightUpClearance( wxMouseEvent& event );
+    virtual void OnRightUpClearance( wxMouseEvent& event ) override;
 
     /// wxEVT_LEFT_DCLICK event handler for ID_UNCONNECTED_LIST
-    virtual void OnLeftDClickUnconnected( wxMouseEvent& event );
+    virtual void OnLeftDClickUnconnected( wxMouseEvent& event ) override;
 
     /// wxEVT_RIGHT_UP event handler for ID_UNCONNECTED_LIST
-    virtual void OnRightUpUnconnected( wxMouseEvent& event );
+    virtual void OnRightUpUnconnected( wxMouseEvent& event ) override;
 
     /// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 
     /// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK
-    virtual void OnOkClick( wxCommandEvent& event );
+    virtual void OnOkClick( wxCommandEvent& event ) override;
 
-    virtual void OnMarkerSelectionEvent( wxCommandEvent& event );
-    virtual void OnUnconnectedSelectionEvent( wxCommandEvent& event );
-    virtual void OnChangingMarkerList( wxNotebookEvent& event );
+    virtual void OnMarkerSelectionEvent( wxCommandEvent& event ) override;
+    virtual void OnUnconnectedSelectionEvent( wxCommandEvent& event ) override;
+    virtual void OnChangingMarkerList( wxNotebookEvent& event ) override;
 
     void DelDRCMarkers();
     void RedrawDrawPanel();
diff --git a/pcbnew/dialogs/dialog_drclistbox.h b/pcbnew/dialogs/dialog_drclistbox.h
index 0add28e..4095e3b 100644
--- a/pcbnew/dialogs/dialog_drclistbox.h
+++ b/pcbnew/dialogs/dialog_drclistbox.h
@@ -71,13 +71,13 @@ public:
 
     //-----<Interface DRC_ITEM_LIST>---------------------------------------
 
-    virtual void            DeleteAllItems()
+    virtual void            DeleteAllItems() override
     {
         m_board->DeleteMARKERs();
     }
 
 
-    virtual const DRC_ITEM* GetItem( int aIndex )
+    virtual const DRC_ITEM* GetItem( int aIndex ) override
     {
         const MARKER_PCB* marker = m_board->GetMARKER( aIndex );
         if( marker )
@@ -85,7 +85,7 @@ public:
         return NULL;
     }
 
-    virtual void DeleteItem( int aIndex )
+    virtual void DeleteItem( int aIndex ) override
     {
         MARKER_PCB* marker = m_board->GetMARKER( aIndex );
         if( marker )
@@ -97,7 +97,7 @@ public:
      * Function GetCount
      * returns the number of items in the list.
      */
-    virtual int  GetCount()
+    virtual int  GetCount() override
     {
         return m_board->GetMARKERCount();
     }
@@ -131,7 +131,7 @@ public:
 
     //-----<Interface DRC_ITEM_LIST>---------------------------------------
 
-    virtual void            DeleteAllItems()
+    virtual void            DeleteAllItems() override
     {
         if( m_vector )
         {
@@ -143,7 +143,7 @@ public:
     }
 
 
-    virtual const DRC_ITEM* GetItem( int aIndex )
+    virtual const DRC_ITEM* GetItem( int aIndex ) override
     {
         if( m_vector &&  (unsigned)aIndex < m_vector->size() )
         {
@@ -153,7 +153,7 @@ public:
         return NULL;
     }
 
-    virtual void DeleteItem( int aIndex )
+    virtual void DeleteItem( int aIndex ) override
     {
         if( m_vector &&  (unsigned)aIndex < m_vector->size() )
         {
@@ -167,7 +167,7 @@ public:
      * Function GetCount
      * returns the number of items in the list.
      */
-    virtual int  GetCount()
+    virtual int  GetCount() override
     {
         if( m_vector )
         {
@@ -244,7 +244,7 @@ public:
      * @param n An index into the list.
      * @return wxString - the simple html text to show in the listbox.
      */
-    virtual wxString OnGetItem( size_t n ) const
+    virtual wxString OnGetItem( size_t n ) const override
     {
         if( m_list )
         {
@@ -262,7 +262,7 @@ public:
      * @param n An index into the list.
      * @return wxString - the simple html text to show in the listbox.
      */
-    virtual wxString OnGetItemMarkup( size_t n ) const
+    virtual wxString OnGetItemMarkup( size_t n ) const override
     {
         return OnGetItem( n );
     }
diff --git a/pcbnew/dialogs/dialog_edit_module_for_BoardEditor.h b/pcbnew/dialogs/dialog_edit_module_for_BoardEditor.h
index e2d9800..9cc11f0 100644
--- a/pcbnew/dialogs/dialog_edit_module_for_BoardEditor.h
+++ b/pcbnew/dialogs/dialog_edit_module_for_BoardEditor.h
@@ -55,23 +55,23 @@ private:
     void Edit3DShapeFileName();
 
     // virtual event functions
-    virtual void OnEditValue( wxCommandEvent& event );
-    virtual void OnEditReference( wxCommandEvent& event );
+    virtual void OnEditValue( wxCommandEvent& event ) override;
+    virtual void OnEditReference( wxCommandEvent& event ) override;
     void On3DShapeSelection( wxCommandEvent& event );
-    virtual void On3DShapeNameSelected( wxCommandEvent& event );
-    virtual void Edit3DShapeFilename( wxCommandEvent& event )
+    virtual void On3DShapeNameSelected( wxCommandEvent& event ) override;
+    virtual void Edit3DShapeFilename( wxCommandEvent& event ) override
     {
         Edit3DShapeFileName();
     }
-    virtual void Remove3DShape( wxCommandEvent& event );
-    virtual void Add3DShape( wxCommandEvent& event )
+    virtual void Remove3DShape( wxCommandEvent& event ) override;
+    virtual void Add3DShape( wxCommandEvent& event ) override
     {
         BrowseAndAdd3DShapeFile();
     }
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void GotoModuleEditor( wxCommandEvent& event );
-    virtual void ExchangeModule( wxCommandEvent& event );
-    virtual void ModuleOrientEvent( wxCommandEvent& event );
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void GotoModuleEditor( wxCommandEvent& event ) override;
+    virtual void ExchangeModule( wxCommandEvent& event ) override;
+    virtual void ModuleOrientEvent( wxCommandEvent& event ) override;
 };
 
diff --git a/pcbnew/dialogs/dialog_edit_module_for_Modedit.h b/pcbnew/dialogs/dialog_edit_module_for_Modedit.h
index b6b313b..a6165a6 100644
--- a/pcbnew/dialogs/dialog_edit_module_for_Modedit.h
+++ b/pcbnew/dialogs/dialog_edit_module_for_Modedit.h
@@ -58,21 +58,21 @@ private:
     void Edit3DShapeFileName();
 
     // virtual event functions
-    virtual void OnEditValue( wxCommandEvent& event );
-    virtual void OnEditReference( wxCommandEvent& event );
+    virtual void OnEditValue( wxCommandEvent& event ) override;
+    virtual void OnEditReference( wxCommandEvent& event ) override;
     void On3DShapeSelection( wxCommandEvent& event );
-    virtual void On3DShapeNameSelected( wxCommandEvent& event );
-    virtual void Add3DShape( wxCommandEvent& event )
+    virtual void On3DShapeNameSelected( wxCommandEvent& event ) override;
+    virtual void Add3DShape( wxCommandEvent& event ) override
     {
         BrowseAndAdd3DShapeFile();
     }
-    virtual void Remove3DShape( wxCommandEvent& event );
-    virtual void Edit3DShapeFilename( wxCommandEvent& event )
+    virtual void Remove3DShape( wxCommandEvent& event ) override;
+    virtual void Edit3DShapeFilename( wxCommandEvent& event ) override
     {
         Edit3DShapeFileName();
     }
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnOkClick( wxCommandEvent& event );
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnOkClick( wxCommandEvent& event ) override;
 };
 
 
diff --git a/pcbnew/dialogs/dialog_edit_module_text.h b/pcbnew/dialogs/dialog_edit_module_text.h
index 185d0ce..83f1165 100644
--- a/pcbnew/dialogs/dialog_edit_module_text.h
+++ b/pcbnew/dialogs/dialog_edit_module_text.h
@@ -46,7 +46,7 @@ public:
 
 private:
     void initDlg( );
-    virtual void OnOkClick( wxCommandEvent& event );
+    virtual void OnOkClick( wxCommandEvent& event ) override;
     void OnCancelClick( wxCommandEvent& event );
 };
 
diff --git a/pcbnew/dialogs/dialog_find.h b/pcbnew/dialogs/dialog_find.h
index cd10d3f..adb1663 100644
--- a/pcbnew/dialogs/dialog_find.h
+++ b/pcbnew/dialogs/dialog_find.h
@@ -48,10 +48,10 @@ private:
     // Function called when an item is found
     boost::function<void (BOARD_ITEM*)> callback;
 
-    virtual void onButtonFindItemClick( wxCommandEvent& event );
-    virtual void onButtonFindMarkerClick( wxCommandEvent& event );
-    virtual void onButtonCloseClick( wxCommandEvent& event );
-    virtual void onClose( wxCloseEvent& event );
+    virtual void onButtonFindItemClick( wxCommandEvent& event ) override;
+    virtual void onButtonFindMarkerClick( wxCommandEvent& event ) override;
+    virtual void onButtonCloseClick( wxCommandEvent& event ) override;
+    virtual void onClose( wxCloseEvent& event ) override;
 };
 
 #endif /* DIALOG_FIND_BASE_H */
diff --git a/pcbnew/dialogs/dialog_footprint_wizard_list.h b/pcbnew/dialogs/dialog_footprint_wizard_list.h
index 312c0b0..faa8905 100644
--- a/pcbnew/dialogs/dialog_footprint_wizard_list.h
+++ b/pcbnew/dialogs/dialog_footprint_wizard_list.h
@@ -39,9 +39,9 @@ public:
     FOOTPRINT_WIZARD* GetWizard();
 
 private:
-    virtual void OnCellWizardClick( wxGridEvent& event );
-    virtual void OnOpenButtonClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnCellWizardClick( wxGridEvent& event ) override;
+    virtual void OnOpenButtonClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 };
 
 #endif  // _DIALOG_FOOTPRINT_WIZARD_LIST_H_
diff --git a/pcbnew/dialogs/dialog_fp_lib_table.cpp b/pcbnew/dialogs/dialog_fp_lib_table.cpp
index 855b902..4682b0a 100644
--- a/pcbnew/dialogs/dialog_fp_lib_table.cpp
+++ b/pcbnew/dialogs/dialog_fp_lib_table.cpp
@@ -81,10 +81,10 @@ public:
 
     //-----<wxGridTableBase overloads>-------------------------------------------
 
-    virtual int         GetNumberRows()    { return rows.size(); }
-    virtual int         GetNumberCols()    { return COL_COUNT; }
+    virtual int         GetNumberRows() override    { return rows.size(); }
+    virtual int         GetNumberCols() override    { return COL_COUNT; }
 
-    virtual wxString    GetValue( int aRow, int aCol )
+    virtual wxString    GetValue( int aRow, int aCol ) override
     {
         if( unsigned( aRow ) < rows.size() )
         {
@@ -105,7 +105,7 @@ public:
         return wxEmptyString;
     }
 
-    virtual void    SetValue( int aRow, int aCol, const wxString &aValue )
+    virtual void    SetValue( int aRow, int aCol, const wxString &aValue ) override
     {
         if( unsigned( aRow ) < rows.size() )
         {
@@ -122,12 +122,12 @@ public:
         }
     }
 
-    virtual bool IsEmptyCell( int aRow, int aCol )
+    virtual bool IsEmptyCell( int aRow, int aCol ) override
     {
         return !GetValue( aRow, aCol );
     }
 
-    virtual bool InsertRows( size_t aPos = 0, size_t aNumRows = 1 )
+    virtual bool InsertRows( size_t aPos = 0, size_t aNumRows = 1 ) override
     {
         if( aPos < rows.size() )
         {
@@ -149,7 +149,7 @@ public:
         return false;
     }
 
-    virtual bool AppendRows( size_t aNumRows = 1 )
+    virtual bool AppendRows( size_t aNumRows = 1 ) override
     {
         // do not modify aNumRows, original value needed for wxGridTableMessage below
         for( int i = aNumRows; i; --i )
@@ -167,7 +167,7 @@ public:
         return true;
     }
 
-    virtual bool DeleteRows( size_t aPos, size_t aNumRows )
+    virtual bool DeleteRows( size_t aPos, size_t aNumRows ) override
     {
         // aPos may be a large positive, e.g. size_t(-1), and the sum of
         // aPos+aNumRows may wrap here, so both ends of the range are tested.
@@ -191,13 +191,13 @@ public:
         return false;
     }
 
-    virtual void Clear()
+    virtual void Clear() override
     {
         rows.clear();
         nickIndex.clear();
     }
 
-    virtual wxString GetColLabelValue( int aCol )
+    virtual wxString GetColLabelValue( int aCol ) override
     {
         switch( aCol )
         {
@@ -228,7 +228,7 @@ protected:
 
     /// handle specialized clipboard text, with leading "(fp_lib_table", OR
     /// spreadsheet formatted text.
-    virtual void paste_text( const wxString& cb_text )
+    virtual void paste_text( const wxString& cb_text ) override
     {
         FP_TBL_MODEL*       tbl = (FP_TBL_MODEL*) m_grid->GetTable();
 
@@ -496,7 +496,7 @@ private:
 
     //-----<event handlers>----------------------------------
 
-    virtual void onKeyDown( wxKeyEvent& ev )
+    virtual void onKeyDown( wxKeyEvent& ev ) override
     {
 #if 0
         // send the key to the current grid
@@ -508,13 +508,13 @@ private:
 #endif
     }
 
-    virtual void pageChangedHandler( wxAuiNotebookEvent& event )
+    virtual void pageChangedHandler( wxAuiNotebookEvent& event ) override
     {
         m_pageNdx = m_auinotebook->GetSelection();
         m_cur_grid = ( m_pageNdx == 0 ) ? m_global_grid : m_project_grid;
     }
 
-    virtual void appendRowHandler( wxCommandEvent& event )
+    virtual void appendRowHandler( wxCommandEvent& event ) override
     {
         if( m_cur_grid->AppendRows( 1 ) )
         {
@@ -527,7 +527,7 @@ private:
         }
     }
 
-    virtual void deleteRowHandler( wxCommandEvent& event )
+    virtual void deleteRowHandler( wxCommandEvent& event ) override
     {
 #if 1
         int currRow = getCursorRow();
@@ -564,7 +564,7 @@ private:
 #endif
     }
 
-    virtual void moveUpHandler( wxCommandEvent& event )
+    virtual void moveUpHandler( wxCommandEvent& event ) override
     {
         int curRow = getCursorRow();
         if( curRow >= 1 )
@@ -596,7 +596,7 @@ private:
         }
     }
 
-    virtual void moveDownHandler( wxCommandEvent& event )
+    virtual void moveDownHandler( wxCommandEvent& event ) override
     {
         FP_TBL_MODEL* tbl = cur_model();
 
@@ -628,7 +628,7 @@ private:
         }
     }
 
-    virtual void optionsEditor( wxCommandEvent& event )
+    virtual void optionsEditor( wxCommandEvent& event ) override
     {
         FP_TBL_MODEL*   tbl = cur_model();
 
@@ -660,19 +660,19 @@ private:
         }
     }
 
-    virtual void OnClickLibraryWizard( wxCommandEvent& event );
+    virtual void OnClickLibraryWizard( wxCommandEvent& event ) override;
 
-    virtual void onCancelButtonClick( wxCommandEvent& event )
+    virtual void onCancelButtonClick( wxCommandEvent& event ) override
     {
         EndModal( 0 );
     }
 
-    virtual void onCancelCaptionButtonClick( wxCloseEvent& event )
+    virtual void onCancelCaptionButtonClick( wxCloseEvent& event ) override
     {
         EndModal( 0 );
     }
 
-    virtual void onOKButtonClick( wxCommandEvent& event )
+    virtual void onOKButtonClick( wxCommandEvent& event ) override
     {
         int dialogRet = 0;
 
diff --git a/pcbnew/dialogs/dialog_fp_plugin_options.cpp b/pcbnew/dialogs/dialog_fp_plugin_options.cpp
index 789657a..b5e12fa 100644
--- a/pcbnew/dialogs/dialog_fp_plugin_options.cpp
+++ b/pcbnew/dialogs/dialog_fp_plugin_options.cpp
@@ -253,7 +253,7 @@ private:
 
     //-----<event handlers>------------------------------------------------------
 
-    virtual void onListBoxItemSelected( wxCommandEvent& event )
+    virtual void onListBoxItemSelected( wxCommandEvent& event ) override
     {
         // change the help text based on the m_listbox selection:
         if( event.IsSelection() )
@@ -274,22 +274,22 @@ private:
         }
     }
 
-    virtual void onListBoxItemDoubleClicked( wxCommandEvent& event )
+    virtual void onListBoxItemDoubleClicked( wxCommandEvent& event ) override
     {
         appendOption();
     }
 
-    virtual void onAppendOption( wxCommandEvent& event )
+    virtual void onAppendOption( wxCommandEvent& event ) override
     {
         appendOption();
     }
 
-    virtual void onAppendRow( wxMouseEvent& event )
+    virtual void onAppendRow( wxMouseEvent& event ) override
     {
         appendRow();
     }
 
-    virtual void onDeleteRow( wxMouseEvent& event )
+    virtual void onDeleteRow( wxMouseEvent& event ) override
     {
         int rowCount = m_grid->GetNumberRows();
         int curRow   = getCursorRow();
@@ -303,7 +303,7 @@ private:
         }
     }
 
-    virtual void onMoveUp( wxMouseEvent& event )
+    virtual void onMoveUp( wxMouseEvent& event ) override
     {
         int curRow = getCursorRow();
         if( curRow >= 1 )
@@ -336,7 +336,7 @@ private:
         }
     }
 
-    virtual void onMoveDown( wxMouseEvent& event )
+    virtual void onMoveDown( wxMouseEvent& event ) override
     {
         int curRow = getCursorRow();
         if( curRow + 1 < m_grid->GetNumberRows() )
@@ -368,17 +368,17 @@ private:
         }
     }
 
-    virtual void onCancelButtonClick( wxCommandEvent& event )
+    virtual void onCancelButtonClick( wxCommandEvent& event ) override
     {
         abort();
     }
 
-    virtual void onCancelCaptionButtonClick( wxCloseEvent& event )
+    virtual void onCancelCaptionButtonClick( wxCloseEvent& event ) override
     {
         abort();
     }
 
-    virtual void onOKButtonClick( wxCommandEvent& event )
+    virtual void onOKButtonClick( wxCommandEvent& event ) override
     {
         saveColSizes();
 
diff --git a/pcbnew/dialogs/dialog_freeroute_exchange.h b/pcbnew/dialogs/dialog_freeroute_exchange.h
index a7a99d4..4eeb5e4 100644
--- a/pcbnew/dialogs/dialog_freeroute_exchange.h
+++ b/pcbnew/dialogs/dialog_freeroute_exchange.h
@@ -35,12 +35,12 @@ private:
 
 private:
     // Virtual event handlers
-    virtual void OnOKButtonClick( wxCommandEvent& event );
-    virtual void OnExportButtonClick( wxCommandEvent& event );
-    virtual void OnLaunchButtonClick( wxCommandEvent& event );
-    virtual void OnImportButtonClick( wxCommandEvent& event );
-    virtual void OnHelpButtonClick( wxCommandEvent& event );
-    virtual void OnCancelButtonClick( wxCommandEvent& event );
+    virtual void OnOKButtonClick( wxCommandEvent& event ) override;
+    virtual void OnExportButtonClick( wxCommandEvent& event ) override;
+    virtual void OnLaunchButtonClick( wxCommandEvent& event ) override;
+    virtual void OnImportButtonClick( wxCommandEvent& event ) override;
+    virtual void OnHelpButtonClick( wxCommandEvent& event ) override;
+    virtual void OnCancelButtonClick( wxCommandEvent& event ) override;
 
     void MyInit ( );
     const wxString createDSN_File();
diff --git a/pcbnew/dialogs/dialog_gendrill.h b/pcbnew/dialogs/dialog_gendrill.h
index fac3556..31d5ca6 100644
--- a/pcbnew/dialogs/dialog_gendrill.h
+++ b/pcbnew/dialogs/dialog_gendrill.h
@@ -68,20 +68,20 @@ private:
     void            InitDisplayParams( void );
 
     // event functions
-    virtual void            OnSelDrillUnitsSelected( wxCommandEvent& event );
-    virtual void            OnSelZerosFmtSelected( wxCommandEvent& event );
-    virtual void            OnGenDrillFile( wxCommandEvent& event );
-    virtual void            OnGenMapFile( wxCommandEvent& event );
+    virtual void            OnSelDrillUnitsSelected( wxCommandEvent& event ) override;
+    virtual void            OnSelZerosFmtSelected( wxCommandEvent& event ) override;
+    virtual void            OnGenDrillFile( wxCommandEvent& event ) override;
+    virtual void            OnGenMapFile( wxCommandEvent& event ) override;
 
     /*
      *  Create a plain text report file giving a list of drill values and drill count
      *  for through holes, oblong holes, and for buried vias,
      *  drill values and drill count per layer pair
      */
-    virtual void            OnGenReportFile( wxCommandEvent& event );
+    virtual void            OnGenReportFile( wxCommandEvent& event ) override;
 
-    virtual void            OnCancelClick( wxCommandEvent& event );
-    virtual void            OnOutputDirectoryBrowseClicked( wxCommandEvent& event );
+    virtual void            OnCancelClick( wxCommandEvent& event ) override;
+    virtual void            OnOutputDirectoryBrowseClicked( wxCommandEvent& event ) override;
 
     // Specific functions:
     void            SetParams( void );
diff --git a/pcbnew/dialogs/dialog_general_options.h b/pcbnew/dialogs/dialog_general_options.h
index 91aca51..445a8de 100644
--- a/pcbnew/dialogs/dialog_general_options.h
+++ b/pcbnew/dialogs/dialog_general_options.h
@@ -37,13 +37,13 @@ private:
 public:
     DIALOG_GENERALOPTIONS( PCB_EDIT_FRAME* parent );
     ~DIALOG_GENERALOPTIONS() {};
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 
     PCB_EDIT_FRAME* GetParent() const { return (PCB_EDIT_FRAME*) wxDialog::GetParent(); }
 
 private:
-    virtual void OnMiddleBtnPanEnbl( wxCommandEvent& event )
+    virtual void OnMiddleBtnPanEnbl( wxCommandEvent& event ) override
     {
         m_OptMiddleButtonPanLimited->Enable( m_MiddleButtonPANOpt->GetValue() );
     }
diff --git a/pcbnew/dialogs/dialog_global_deletion.h b/pcbnew/dialogs/dialog_global_deletion.h
index 956fa97..d3eeb12 100644
--- a/pcbnew/dialogs/dialog_global_deletion.h
+++ b/pcbnew/dialogs/dialog_global_deletion.h
@@ -36,20 +36,20 @@ private:
     PCB_EDIT_FRAME* m_Parent;
     LAYER_NUM m_currentLayer;
 
-    virtual void OnOkClick( wxCommandEvent& event )
+    virtual void OnOkClick( wxCommandEvent& event ) override
     {
         AcceptPcbDelete();
         EndModal(wxID_OK);
     }
 
-    virtual void OnCancelClick( wxCommandEvent& event )
+    virtual void OnCancelClick( wxCommandEvent& event ) override
     {
         EndModal(wxID_CANCEL);
     }
 
     void AcceptPcbDelete();
-    virtual void OnCheckDeleteTracks( wxCommandEvent& event );
-    virtual void OnCheckDeleteModules( wxCommandEvent& event );
+    virtual void OnCheckDeleteTracks( wxCommandEvent& event ) override;
+    virtual void OnCheckDeleteModules( wxCommandEvent& event ) override;
 };
 
 #endif  // _DIALOG_GLOBAL_DELETION_H_
diff --git a/pcbnew/dialogs/dialog_global_edit_tracks_and_vias.h b/pcbnew/dialogs/dialog_global_edit_tracks_and_vias.h
index f8de492..dbe6630 100644
--- a/pcbnew/dialogs/dialog_global_edit_tracks_and_vias.h
+++ b/pcbnew/dialogs/dialog_global_edit_tracks_and_vias.h
@@ -43,9 +43,9 @@ public:
     ~DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS() {};
 
     // Virtual event handlers, overided here
-    virtual void OnSelectionClick( wxCommandEvent& event ) { m_OptionID = event.GetId(); }
-    virtual void OnOkClick( wxCommandEvent& event ) ;
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnSelectionClick( wxCommandEvent& event ) override { m_OptionID = event.GetId(); }
+    virtual void OnOkClick( wxCommandEvent& event ) override ;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
     void MyInit();
 };
 
diff --git a/pcbnew/dialogs/dialog_global_modules_fields_edition.cpp b/pcbnew/dialogs/dialog_global_modules_fields_edition.cpp
index 865bd6c..7f8d5cd 100644
--- a/pcbnew/dialogs/dialog_global_modules_fields_edition.cpp
+++ b/pcbnew/dialogs/dialog_global_modules_fields_edition.cpp
@@ -71,8 +71,8 @@ private:
     void initDialog();
 
     // event handlers
-    virtual void OnOKClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event )
+    virtual void OnOKClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override
     {
         EndModal( wxID_CANCEL );
     }
diff --git a/pcbnew/dialogs/dialog_graphic_item_properties.cpp b/pcbnew/dialogs/dialog_graphic_item_properties.cpp
index 8fddca2..fb52a53 100644
--- a/pcbnew/dialogs/dialog_graphic_item_properties.cpp
+++ b/pcbnew/dialogs/dialog_graphic_item_properties.cpp
@@ -66,8 +66,8 @@ public:
 
 private:
     void initDlg();
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event ) { event.Skip(); }
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override { event.Skip(); }
     void OnLayerChoice( wxCommandEvent& event );
     bool itemValuesOK();
 };
diff --git a/pcbnew/dialogs/dialog_graphic_item_properties_for_Modedit.cpp b/pcbnew/dialogs/dialog_graphic_item_properties_for_Modedit.cpp
index 03f67ab..ea5fefd 100644
--- a/pcbnew/dialogs/dialog_graphic_item_properties_for_Modedit.cpp
+++ b/pcbnew/dialogs/dialog_graphic_item_properties_for_Modedit.cpp
@@ -66,8 +66,8 @@ public:
 
 private:
     void initDlg();
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event ) { event.Skip(); }
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override { event.Skip(); }
     void OnLayerChoice( wxCommandEvent& event );
     bool itemValuesOK();
 };
diff --git a/pcbnew/dialogs/dialog_graphic_items_options.h b/pcbnew/dialogs/dialog_graphic_items_options.h
index c563aa8..4fc9c65 100644
--- a/pcbnew/dialogs/dialog_graphic_items_options.h
+++ b/pcbnew/dialogs/dialog_graphic_items_options.h
@@ -47,8 +47,8 @@ public:
 
 private:
     void initValues( );
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 };
 
 #endif
diff --git a/pcbnew/dialogs/dialog_keepout_area_properties.cpp b/pcbnew/dialogs/dialog_keepout_area_properties.cpp
index c60aeb1..9d93d6d 100644
--- a/pcbnew/dialogs/dialog_keepout_area_properties.cpp
+++ b/pcbnew/dialogs/dialog_keepout_area_properties.cpp
@@ -70,8 +70,8 @@ private:
      */
     void initDialog();
 
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 
     /**
      * Function AcceptOptionsForKeepOut
diff --git a/pcbnew/dialogs/dialog_layers_setup.cpp b/pcbnew/dialogs/dialog_layers_setup.cpp
index 9d69d0b..b06eb4a 100644
--- a/pcbnew/dialogs/dialog_layers_setup.cpp
+++ b/pcbnew/dialogs/dialog_layers_setup.cpp
@@ -164,12 +164,12 @@ protected:
     int getLayerTypeIndex( LAYER_NUM layer );
 
 
-    virtual void OnCancelButtonClick( wxCommandEvent& event );
-    virtual void OnOkButtonClick( wxCommandEvent& event );
-    virtual void OnCheckBox( wxCommandEvent& event );
-    virtual void DenyChangeCheckBox( wxCommandEvent& event );
-    virtual void OnPresetsChoice( wxCommandEvent& event );
-    virtual void OnCopperLayersChoice( wxCommandEvent& event );
+    virtual void OnCancelButtonClick( wxCommandEvent& event ) override;
+    virtual void OnOkButtonClick( wxCommandEvent& event ) override;
+    virtual void OnCheckBox( wxCommandEvent& event ) override;
+    virtual void DenyChangeCheckBox( wxCommandEvent& event ) override;
+    virtual void OnPresetsChoice( wxCommandEvent& event ) override;
+    virtual void OnCopperLayersChoice( wxCommandEvent& event ) override;
 
     bool testLayerNames();
 
@@ -219,7 +219,7 @@ protected:
      * overrides the standard Layout() function so that the column titles can
      * be positioned using information in the flexgridsizer.
      */
-    virtual bool Layout()
+    virtual bool Layout() override
     {
         bool ret = DIALOG_LAYERS_SETUP_BASE::Layout();
 
diff --git a/pcbnew/dialogs/dialog_mask_clearance.h b/pcbnew/dialogs/dialog_mask_clearance.h
index 764ea1a..f8478f9 100644
--- a/pcbnew/dialogs/dialog_mask_clearance.h
+++ b/pcbnew/dialogs/dialog_mask_clearance.h
@@ -43,8 +43,8 @@ public:
     ~DIALOG_PADS_MASK_CLEARANCE() {};
 private:
     void         myInit();
-    virtual void OnButtonOkClick( wxCommandEvent& event );
-    virtual void OnButtonCancelClick( wxCommandEvent& event );
+    virtual void OnButtonOkClick( wxCommandEvent& event ) override;
+    virtual void OnButtonCancelClick( wxCommandEvent& event ) override;
 };
 
 #endif    // _DIALOG_MASK_CLEARANCE_H_
diff --git a/pcbnew/dialogs/dialog_modedit_options.cpp b/pcbnew/dialogs/dialog_modedit_options.cpp
index 4c0a2ba..ef80a94 100644
--- a/pcbnew/dialogs/dialog_modedit_options.cpp
+++ b/pcbnew/dialogs/dialog_modedit_options.cpp
@@ -43,8 +43,8 @@ public:
     DIALOG_MODEDIT_OPTIONS( FOOTPRINT_EDIT_FRAME* aParent );
 
 private:
-    virtual void OnCancelClick( wxCommandEvent& event ) { EndModal( wxID_CANCEL ); }
-    virtual void OnOkClick( wxCommandEvent& event );
+    virtual void OnCancelClick( wxCommandEvent& event ) override { EndModal( wxID_CANCEL ); }
+    virtual void OnOkClick( wxCommandEvent& event ) override;
 
     void initValues( );
 };
diff --git a/pcbnew/dialogs/dialog_move_exact.h b/pcbnew/dialogs/dialog_move_exact.h
index a65ccec..8ca5948 100644
--- a/pcbnew/dialogs/dialog_move_exact.h
+++ b/pcbnew/dialogs/dialog_move_exact.h
@@ -47,13 +47,13 @@ private:
     /*!
      * Reset a text field to be 0 if it was exited while blank
      */
-    virtual void OnTextFocusLost( wxFocusEvent& event );
+    virtual void OnTextFocusLost( wxFocusEvent& event ) override;
 
-    virtual void OnPolarChanged( wxCommandEvent& event );
-    virtual void OnClear( wxCommandEvent& event );
+    virtual void OnPolarChanged( wxCommandEvent& event ) override;
+    virtual void OnClear( wxCommandEvent& event ) override;
 
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnOkClick( wxCommandEvent& event );
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnOkClick( wxCommandEvent& event ) override;
 
     /**
      * Convert a given Cartesian point into a polar representation.
diff --git a/pcbnew/dialogs/dialog_netlist.h b/pcbnew/dialogs/dialog_netlist.h
index a704fb0..101f868 100644
--- a/pcbnew/dialogs/dialog_netlist.h
+++ b/pcbnew/dialogs/dialog_netlist.h
@@ -88,23 +88,23 @@ private:
     void loadFootprints( NETLIST& aNetlist );
 
     // Virtual event handlers:
-    virtual void OnOpenNetlistClick( wxCommandEvent& event );
-    virtual void OnReadNetlistFileClick( wxCommandEvent& event );
-    virtual void OnTestFootprintsClick( wxCommandEvent& event );
-    virtual void OnCompileRatsnestClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnSaveMessagesToFile( wxCommandEvent& aEvent );
-    virtual void OnClickSilentMode( wxCommandEvent& event )
+    virtual void OnOpenNetlistClick( wxCommandEvent& event ) override;
+    virtual void OnReadNetlistFileClick( wxCommandEvent& event ) override;
+    virtual void OnTestFootprintsClick( wxCommandEvent& event ) override;
+    virtual void OnCompileRatsnestClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnSaveMessagesToFile( wxCommandEvent& aEvent ) override;
+    virtual void OnClickSilentMode( wxCommandEvent& event ) override
     {
         m_silentMode = m_checkBoxSilentMode->GetValue();
     }
-    virtual void OnClickFullMessages( wxCommandEvent& event )
+    virtual void OnClickFullMessages( wxCommandEvent& event ) override
     {
         m_reportAll = m_checkBoxFullMessages->GetValue();
     }
 
-    virtual void OnUpdateUISaveMessagesToFile( wxUpdateUIEvent& aEvent );
-    virtual void OnUpdateUIValidNetlistFile( wxUpdateUIEvent& aEvent );
+    virtual void OnUpdateUISaveMessagesToFile( wxUpdateUIEvent& aEvent ) override;
+    virtual void OnUpdateUIValidNetlistFile( wxUpdateUIEvent& aEvent ) override;
 };
 
 
diff --git a/pcbnew/dialogs/dialog_non_copper_zones_properties.cpp b/pcbnew/dialogs/dialog_non_copper_zones_properties.cpp
index 7fa813c..ed8f22b 100644
--- a/pcbnew/dialogs/dialog_non_copper_zones_properties.cpp
+++ b/pcbnew/dialogs/dialog_non_copper_zones_properties.cpp
@@ -59,8 +59,8 @@ private:
     ZONE_SETTINGS*  m_ptr;
     ZONE_SETTINGS   m_settings;     // working copy of zone settings
 
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
     void Init();
 
 public:
diff --git a/pcbnew/dialogs/dialog_orient_footprints.cpp b/pcbnew/dialogs/dialog_orient_footprints.cpp
index d7847ec..7308ff2 100644
--- a/pcbnew/dialogs/dialog_orient_footprints.cpp
+++ b/pcbnew/dialogs/dialog_orient_footprints.cpp
@@ -72,8 +72,8 @@ public:
 private:
     void init();
 
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 };
 
 
diff --git a/pcbnew/dialogs/dialog_pad_properties.cpp b/pcbnew/dialogs/dialog_pad_properties.cpp
index 0eddf02..3c0f7a1 100644
--- a/pcbnew/dialogs/dialog_pad_properties.cpp
+++ b/pcbnew/dialogs/dialog_pad_properties.cpp
@@ -132,23 +132,23 @@ private:
     // event handlers:
     void OnResize( wxSizeEvent& event );
 
-    virtual void OnPadShapeSelection( wxCommandEvent& event );
-    virtual void OnDrillShapeSelected( wxCommandEvent& event );
+    virtual void OnPadShapeSelection( wxCommandEvent& event ) override;
+    virtual void OnDrillShapeSelected( wxCommandEvent& event ) override;
 
-    virtual void PadOrientEvent( wxCommandEvent& event );
-    virtual void PadTypeSelected( wxCommandEvent& event );
+    virtual void PadOrientEvent( wxCommandEvent& event ) override;
+    virtual void PadTypeSelected( wxCommandEvent& event ) override;
 
-    virtual void OnSetLayers( wxCommandEvent& event );
-    virtual void OnCancelButtonClick( wxCommandEvent& event );
-    virtual void OnPaintShowPanel( wxPaintEvent& event );
+    virtual void OnSetLayers( wxCommandEvent& event ) override;
+    virtual void OnCancelButtonClick( wxCommandEvent& event ) override;
+    virtual void OnPaintShowPanel( wxPaintEvent& event ) override;
 
     /// Called when a dimension has changed.
     /// Update the graphical pad shown in the panel.
-    virtual void OnValuesChanged( wxCommandEvent& event );
+    virtual void OnValuesChanged( wxCommandEvent& event ) override;
 
     /// Updates the different parameters for the component being edited.
     /// Fired from the OK button click.
-    virtual void PadPropertiesAccept( wxCommandEvent& event );
+    virtual void PadPropertiesAccept( wxCommandEvent& event ) override;
 };
 
 
diff --git a/pcbnew/dialogs/dialog_pcb_text_properties.cpp b/pcbnew/dialogs/dialog_pcb_text_properties.cpp
index 07e9c84..b1e8f01 100644
--- a/pcbnew/dialogs/dialog_pcb_text_properties.cpp
+++ b/pcbnew/dialogs/dialog_pcb_text_properties.cpp
@@ -61,9 +61,9 @@ private:
     void MyInit();
 
     // Handlers for DIALOG_PCB_TEXT_PROPERTIES_BASE events.
-    virtual void OnClose( wxCloseEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnOkClick( wxCommandEvent& event );
+    virtual void OnClose( wxCloseEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnOkClick( wxCommandEvent& event ) override;
 };
 
 
diff --git a/pcbnew/dialogs/dialog_plot.h b/pcbnew/dialogs/dialog_plot.h
index d405c71..abc322a 100644
--- a/pcbnew/dialogs/dialog_plot.h
+++ b/pcbnew/dialogs/dialog_plot.h
@@ -59,15 +59,15 @@ private:
 
     // Event called functions
     void        Init_Dialog();
-    virtual void        Plot( wxCommandEvent& event );
-    virtual void        OnQuit( wxCommandEvent& event );
-    virtual void        OnClose( wxCloseEvent& event );
-    virtual void        OnOutputDirectoryBrowseClicked( wxCommandEvent& event );
-    virtual void        OnRightClick( wxMouseEvent& event );
-    virtual void        OnPopUpLayers( wxCommandEvent& event );
-    virtual void        SetPlotFormat( wxCommandEvent& event );
-    virtual void        OnSetScaleOpt( wxCommandEvent& event );
-    virtual void        CreateDrillFile( wxCommandEvent& event );
+    virtual void        Plot( wxCommandEvent& event ) override;
+    virtual void        OnQuit( wxCommandEvent& event ) override;
+    virtual void        OnClose( wxCloseEvent& event ) override;
+    virtual void        OnOutputDirectoryBrowseClicked( wxCommandEvent& event ) override;
+    virtual void        OnRightClick( wxMouseEvent& event ) override;
+    virtual void        OnPopUpLayers( wxCommandEvent& event ) override;
+    virtual void        SetPlotFormat( wxCommandEvent& event ) override;
+    virtual void        OnSetScaleOpt( wxCommandEvent& event ) override;
+    virtual void        CreateDrillFile( wxCommandEvent& event ) override;
 
     // orther functions
     void        applyPlotSettings();
diff --git a/pcbnew/dialogs/dialog_pns_diff_pair_dimensions.h b/pcbnew/dialogs/dialog_pns_diff_pair_dimensions.h
index c40d9db..e1bf7d6 100644
--- a/pcbnew/dialogs/dialog_pns_diff_pair_dimensions.h
+++ b/pcbnew/dialogs/dialog_pns_diff_pair_dimensions.h
@@ -36,9 +36,9 @@ class DIALOG_PNS_DIFF_PAIR_DIMENSIONS : public DIALOG_PNS_DIFF_PAIR_DIMENSIONS_B
 public:
     DIALOG_PNS_DIFF_PAIR_DIMENSIONS( wxWindow* aParent, PNS_SIZES_SETTINGS& aSizes );
 
-    virtual void OnClose( wxCloseEvent& aEvent );
-    virtual void OnOkClick( wxCommandEvent& aEvent );
-    virtual void OnCancelClick( wxCommandEvent& aEvent );
+    virtual void OnClose( wxCloseEvent& aEvent ) override;
+    virtual void OnOkClick( wxCommandEvent& aEvent ) override;
+    virtual void OnCancelClick( wxCommandEvent& aEvent ) override;
     virtual void OnViaTraceGapEqualCheck( wxCommandEvent& event );
 
 private:
diff --git a/pcbnew/dialogs/dialog_pns_length_tuning_settings.h b/pcbnew/dialogs/dialog_pns_length_tuning_settings.h
index f65d950..2b9209a 100644
--- a/pcbnew/dialogs/dialog_pns_length_tuning_settings.h
+++ b/pcbnew/dialogs/dialog_pns_length_tuning_settings.h
@@ -38,9 +38,9 @@ class DIALOG_PNS_LENGTH_TUNING_SETTINGS : public DIALOG_PNS_LENGTH_TUNING_SETTIN
 public:
     DIALOG_PNS_LENGTH_TUNING_SETTINGS( wxWindow* aParent, PNS_MEANDER_SETTINGS& aSettings, PNS_ROUTER_MODE aMode );
 
-    virtual void OnClose( wxCloseEvent& aEvent );
-    virtual void OnOkClick( wxCommandEvent& aEvent );
-    virtual void OnCancelClick( wxCommandEvent& aEvent );
+    virtual void OnClose( wxCloseEvent& aEvent ) override;
+    virtual void OnOkClick( wxCommandEvent& aEvent ) override;
+    virtual void OnCancelClick( wxCommandEvent& aEvent ) override;
 
 private:
     WX_UNIT_BINDER m_minAmpl;
diff --git a/pcbnew/dialogs/dialog_pns_settings.h b/pcbnew/dialogs/dialog_pns_settings.h
index 2241ed6..466b341 100644
--- a/pcbnew/dialogs/dialog_pns_settings.h
+++ b/pcbnew/dialogs/dialog_pns_settings.h
@@ -34,9 +34,9 @@ class DIALOG_PNS_SETTINGS : public DIALOG_PNS_SETTINGS_BASE
 	public:
 		DIALOG_PNS_SETTINGS( wxWindow* aParent, PNS_ROUTING_SETTINGS& aSettings );
 
-        virtual void OnClose( wxCloseEvent& aEvent );
-        virtual void OnOkClick( wxCommandEvent& aEvent );
-        virtual void OnCancelClick( wxCommandEvent& aEvent );
+        virtual void OnClose( wxCloseEvent& aEvent ) override;
+        virtual void OnOkClick( wxCommandEvent& aEvent ) override;
+        virtual void OnCancelClick( wxCommandEvent& aEvent ) override;
 	
 	private:
 		PNS_ROUTING_SETTINGS& m_settings;
diff --git a/pcbnew/dialogs/dialog_print_for_modedit.cpp b/pcbnew/dialogs/dialog_print_for_modedit.cpp
index 3bc16ff..85f80eb 100644
--- a/pcbnew/dialogs/dialog_print_for_modedit.cpp
+++ b/pcbnew/dialogs/dialog_print_for_modedit.cpp
@@ -59,17 +59,17 @@ private:
     PCB_BASE_FRAME* m_parent;
     wxConfigBase*       m_config;
 
-    virtual void OnCloseWindow( wxCloseEvent& event );
+    virtual void OnCloseWindow( wxCloseEvent& event ) override;
 
     /// Open a dialog box for printer setup (printer options, page size ...)
-    virtual void OnPageSetup( wxCommandEvent& event );
+    virtual void OnPageSetup( wxCommandEvent& event ) override;
 
-    virtual void OnPrintPreview( wxCommandEvent& event );
+    virtual void OnPrintPreview( wxCommandEvent& event ) override;
 
     /// Called on activate Print button
-    virtual void OnPrintButtonClick( wxCommandEvent& event );
+    virtual void OnPrintButtonClick( wxCommandEvent& event ) override;
 
-    virtual void OnButtonCancelClick( wxCommandEvent& event ) { Close(); }
+    virtual void OnButtonCancelClick( wxCommandEvent& event ) override { Close(); }
     void InitValues( );
 };
 
diff --git a/pcbnew/dialogs/dialog_print_using_printer.cpp b/pcbnew/dialogs/dialog_print_using_printer.cpp
index 5d706f6..eac796f 100644
--- a/pcbnew/dialogs/dialog_print_using_printer.cpp
+++ b/pcbnew/dialogs/dialog_print_using_printer.cpp
@@ -85,13 +85,13 @@ private:
     wxCheckBox*     m_BoxSelectLayer[LAYER_ID_COUNT];
     static bool     m_ExcludeEdgeLayer;
 
-    virtual void OnCloseWindow( wxCloseEvent& event );
-    virtual void OnPageSetup( wxCommandEvent& event );
-    virtual void OnPrintPreview( wxCommandEvent& event );
-    virtual void OnPrintButtonClick( wxCommandEvent& event );
-    virtual void OnScaleSelectionClick( wxCommandEvent& event );
+    virtual void OnCloseWindow( wxCloseEvent& event ) override;
+    virtual void OnPageSetup( wxCommandEvent& event ) override;
+    virtual void OnPrintPreview( wxCommandEvent& event ) override;
+    virtual void OnPrintButtonClick( wxCommandEvent& event ) override;
+    virtual void OnScaleSelectionClick( wxCommandEvent& event ) override;
 
-    virtual void OnButtonCancelClick( wxCommandEvent& event ) { Close(); }
+    virtual void OnButtonCancelClick( wxCommandEvent& event ) override { Close(); }
     void SetPrintParameters( );
     void SetPenWidth();
     void initValues( );
diff --git a/pcbnew/dialogs/dialog_select_pretty_lib.h b/pcbnew/dialogs/dialog_select_pretty_lib.h
index 1c201f0..a9ec94b 100644
--- a/pcbnew/dialogs/dialog_select_pretty_lib.h
+++ b/pcbnew/dialogs/dialog_select_pretty_lib.h
@@ -46,7 +46,7 @@ public:
     const wxString GetPath() { return m_libName->GetValue(); }
 
 private:
-    virtual void OnSelectFolder( wxTreeEvent& event );
+    virtual void OnSelectFolder( wxTreeEvent& event ) override;
 };
 
 
diff --git a/pcbnew/dialogs/dialog_set_grid.cpp b/pcbnew/dialogs/dialog_set_grid.cpp
index 3efd355..2d0f0ee 100644
--- a/pcbnew/dialogs/dialog_set_grid.cpp
+++ b/pcbnew/dialogs/dialog_set_grid.cpp
@@ -46,9 +46,9 @@ public:
         int* aFastGrid1, int* aFastGrid2, const wxArrayString& aGridChoices );
 
 private:
-    virtual void            OnResetGridOrgClick( wxCommandEvent& event );
-    virtual void            OnCancelClick( wxCommandEvent& event );
-    virtual void            OnOkClick( wxCommandEvent& event );
+    virtual void            OnResetGridOrgClick( wxCommandEvent& event ) override;
+    virtual void            OnCancelClick( wxCommandEvent& event ) override;
+    virtual void            OnOkClick( wxCommandEvent& event ) override;
 
     EDA_UNITS_T&    m_callers_grid_units;
     EDA_UNITS_T     m_callers_board_units;
diff --git a/pcbnew/dialogs/dialog_track_via_size.h b/pcbnew/dialogs/dialog_track_via_size.h
index c738a52..50102a2 100644
--- a/pcbnew/dialogs/dialog_track_via_size.h
+++ b/pcbnew/dialogs/dialog_track_via_size.h
@@ -50,9 +50,9 @@ protected:
     bool check();
 
     // Handlers for DIALOG_TRACK_VIA_SIZE_BASE events.
-    virtual void onClose( wxCloseEvent& aEvent );
-    virtual void onOkClick( wxCommandEvent& aEvent );
-    virtual void onCancelClick( wxCommandEvent& aEvent );
+    virtual void onClose( wxCloseEvent& aEvent ) override;
+    virtual void onOkClick( wxCommandEvent& aEvent ) override;
+    virtual void onCancelClick( wxCommandEvent& aEvent ) override;
 };
 
 #endif // __dialog_track_via_size__
diff --git a/pcbnew/dialogs/wizard_add_fplib.h b/pcbnew/dialogs/wizard_add_fplib.h
index 8be8850..18b40f6 100644
--- a/pcbnew/dialogs/wizard_add_fplib.h
+++ b/pcbnew/dialogs/wizard_add_fplib.h
@@ -177,18 +177,18 @@ private:
                           const wxString&      aPluginName );
 
     // Virtual event functions, from WIZARD_FPLIB_TABLE_BASE
-    virtual void OnFinish( wxWizardEvent& event ) { event.Skip(); }
-    virtual void OnPageChanged( wxWizardEvent& event );
-    virtual void OnPageChanging( wxWizardEvent& event );
-    virtual void OnAddEVariable( wxCommandEvent& event );
-    virtual void OnRemoveEVariable( wxCommandEvent& event );
-    virtual void OnAddFpLibs( wxCommandEvent& event );
-    virtual void OnRemoveFpLibs( wxCommandEvent& event );
-    virtual void OnPathManagementSelection( wxCommandEvent& event );
-    virtual void OnSelectEnvVarCell( wxGridEvent& event );
-    virtual void OnPluginSelection( wxCommandEvent& event );
+    virtual void OnFinish( wxWizardEvent& event ) override { event.Skip(); }
+    virtual void OnPageChanged( wxWizardEvent& event ) override;
+    virtual void OnPageChanging( wxWizardEvent& event ) override;
+    virtual void OnAddEVariable( wxCommandEvent& event ) override;
+    virtual void OnRemoveEVariable( wxCommandEvent& event ) override;
+    virtual void OnAddFpLibs( wxCommandEvent& event ) override;
+    virtual void OnRemoveFpLibs( wxCommandEvent& event ) override;
+    virtual void OnPathManagementSelection( wxCommandEvent& event ) override;
+    virtual void OnSelectEnvVarCell( wxGridEvent& event ) override;
+    virtual void OnPluginSelection( wxCommandEvent& event ) override;
 #ifdef BUILD_GITHUB_PLUGIN
-    virtual void OnGithubLibsList( wxCommandEvent& event );
+    virtual void OnGithubLibsList( wxCommandEvent& event ) override;
 #endif
     bool ValidateOptions();
 };
diff --git a/pcbnew/dimension.cpp b/pcbnew/dimension.cpp
index f7bb8fd..f00a884 100644
--- a/pcbnew/dimension.cpp
+++ b/pcbnew/dimension.cpp
@@ -94,8 +94,8 @@ public:
 
 
 private:
-    virtual void OnCancelClick( wxCommandEvent& event );
-    virtual void OnOKClick( wxCommandEvent& event );
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
+    virtual void OnOKClick( wxCommandEvent& event ) override;
 };
 
 
diff --git a/pcbnew/eagle_plugin.h b/pcbnew/eagle_plugin.h
index d228967..354ea65 100644
--- a/pcbnew/eagle_plugin.h
+++ b/pcbnew/eagle_plugin.h
@@ -79,22 +79,22 @@ class EAGLE_PLUGIN : public PLUGIN
 public:
 
     //-----<PUBLIC PLUGIN API>--------------------------------------------------
-    virtual const wxString PluginName() const;
+    virtual const wxString PluginName() const override;
 
-    virtual BOARD* Load( const wxString& aFileName, BOARD* aAppendToMe,  const PROPERTIES* aProperties = NULL );
+    virtual BOARD* Load( const wxString& aFileName, BOARD* aAppendToMe,  const PROPERTIES* aProperties = NULL ) override;
 
-    virtual const wxString GetFileExtension() const;
+    virtual const wxString GetFileExtension() const override;
 
-    virtual wxArrayString FootprintEnumerate( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL);
+    virtual wxArrayString FootprintEnumerate( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL) override;
 
-    virtual MODULE* FootprintLoad( const wxString& aLibraryPath, const wxString& aFootprintName, const PROPERTIES* aProperties = NULL );
+    virtual MODULE* FootprintLoad( const wxString& aLibraryPath, const wxString& aFootprintName, const PROPERTIES* aProperties = NULL ) override;
 
-    virtual bool IsFootprintLibWritable( const wxString& aLibraryPath )
+    virtual bool IsFootprintLibWritable( const wxString& aLibraryPath ) override
     {
         return false;   // until someone writes others like FootprintSave(), etc.
     }
 
-    virtual void FootprintLibOptions( PROPERTIES* aProperties ) const;
+    virtual void FootprintLibOptions( PROPERTIES* aProperties ) const override;
 
 /*
     void Save( const wxString& aFileName, BOARD* aBoard, const PROPERTIES* aProperties = NULL );
diff --git a/pcbnew/exporters/gen_modules_placefile.cpp b/pcbnew/exporters/gen_modules_placefile.cpp
index 2504084..790bbc0 100644
--- a/pcbnew/exporters/gen_modules_placefile.cpp
+++ b/pcbnew/exporters/gen_modules_placefile.cpp
@@ -102,13 +102,13 @@ private:
     static int m_unitsOpt;
     static int m_fileOpt;
 
-    virtual void OnInitDialog( wxInitDialogEvent& event );
-    virtual void OnOutputDirectoryBrowseClicked( wxCommandEvent& event );
-    virtual void OnCancelButton( wxCommandEvent& event )
+    virtual void OnInitDialog( wxInitDialogEvent& event ) override;
+    virtual void OnOutputDirectoryBrowseClicked( wxCommandEvent& event ) override;
+    virtual void OnCancelButton( wxCommandEvent& event ) override
     {
         EndModal( wxID_CANCEL );
     }
-    virtual void OnOKButton( wxCommandEvent& event );
+    virtual void OnOKButton( wxCommandEvent& event ) override;
 
     bool CreateFiles();
 
diff --git a/pcbnew/footprint_wizard_frame.h b/pcbnew/footprint_wizard_frame.h
index 5071ebb..2e775fb 100644
--- a/pcbnew/footprint_wizard_frame.h
+++ b/pcbnew/footprint_wizard_frame.h
@@ -69,7 +69,7 @@ public:
 
 private:
 
-    virtual void        OnSize( wxSizeEvent& event );
+    virtual void        OnSize( wxSizeEvent& event ) override;
 
     /**
      * Function ExportSelectedFootprint();
@@ -126,18 +126,18 @@ private:
     void                DisplayWizardInfos();
 
 
-    virtual void        RedrawActiveWindow( wxDC* DC, bool EraseBg );
-    virtual void        OnCloseWindow( wxCloseEvent& Event );
-    virtual void        ReCreateHToolbar();
-    virtual void        ReCreateVToolbar();
-    virtual void        OnLeftClick( wxDC* DC, const wxPoint& MousePos );
+    virtual void        RedrawActiveWindow( wxDC* DC, bool EraseBg ) override;
+    virtual void        OnCloseWindow( wxCloseEvent& Event ) override;
+    virtual void        ReCreateHToolbar() override;
+    virtual void        ReCreateVToolbar() override;
+    virtual void        OnLeftClick( wxDC* DC, const wxPoint& MousePos ) override;
     void                ClickOnPageList( wxCommandEvent& event );
     void                OnSetRelativeOffset( wxCommandEvent& event );
 
-    virtual bool        GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 );
+    virtual bool        GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 ) override;
 
-    virtual void        LoadSettings( wxConfigBase* aCfg );
-    virtual void        SaveSettings( wxConfigBase* aCfg );
+    virtual void        LoadSettings( wxConfigBase* aCfg ) override;
+    virtual void        SaveSettings( wxConfigBase* aCfg ) override;
 
 
     /**
@@ -145,20 +145,20 @@ private:
      * is called when the frame frame is activate to reload the libraries and component lists
      * that can be changed by the schematic editor or the library editor.
      */
-    virtual void        OnActivate( wxActivateEvent& event );
+    virtual void        OnActivate( wxActivateEvent& event ) override;
 
     void                SelectCurrentWizard( wxCommandEvent& event );
 
     void                ParametersUpdated( wxGridEvent& event );
 
 
-    virtual bool        OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu );
+    virtual bool        OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu ) override;
 
     /**
      * Function Show3D_Frame (virtual)
      * displays 3D view of the footprint (module) being edited.
      */
-    virtual void        Show3D_Frame( wxCommandEvent& event );
+    virtual void        Show3D_Frame( wxCommandEvent& event ) override;
 
     /**
      * Function Update3D_Frame
@@ -173,9 +173,9 @@ private:
      * Virtual functions, not used here, but needed by PCB_BASE_FRAME
      * (virtual pure functions )
      */
-    virtual void OnLeftDClick( wxDC*, const wxPoint& ) {}
-    virtual void SaveCopyInUndoList( BOARD_ITEM*, UNDO_REDO_T, const wxPoint& ) {}
-    virtual void SaveCopyInUndoList( const PICKED_ITEMS_LIST&, UNDO_REDO_T, const wxPoint& ) {}
+    virtual void OnLeftDClick( wxDC*, const wxPoint& ) override {}
+    virtual void SaveCopyInUndoList( BOARD_ITEM*, UNDO_REDO_T, const wxPoint& ) override {}
+    virtual void SaveCopyInUndoList( const PICKED_ITEMS_LIST&, UNDO_REDO_T, const wxPoint& ) override {}
 
 
     DECLARE_EVENT_TABLE()
diff --git a/pcbnew/github/github_plugin.h b/pcbnew/github/github_plugin.h
index d7e6cb5..3d07b60 100644
--- a/pcbnew/github/github_plugin.h
+++ b/pcbnew/github/github_plugin.h
@@ -163,33 +163,33 @@ class GITHUB_PLUGIN : public PCB_IO
 {
 public:
     //-----<PLUGIN API>----------------------------------------------------------
-    virtual const wxString PluginName() const;
+    virtual const wxString PluginName() const override;
 
-    virtual const wxString GetFileExtension() const;
+    virtual const wxString GetFileExtension() const override;
 
     virtual wxArrayString FootprintEnumerate( const wxString& aLibraryPath,
-            const PROPERTIES* aProperties = NULL );
+            const PROPERTIES* aProperties = NULL ) override;
 
     virtual MODULE* FootprintLoad( const wxString& aLibraryPath,
-            const wxString& aFootprintName, const PROPERTIES* aProperties );
+            const wxString& aFootprintName, const PROPERTIES* aProperties ) override;
 
     virtual void FootprintSave( const wxString& aLibraryPath, const MODULE* aFootprint,
-            const PROPERTIES* aProperties = NULL );
+            const PROPERTIES* aProperties = NULL ) override;
 
     virtual void FootprintDelete( const wxString& aLibraryPath, const wxString& aFootprintName,
-            const PROPERTIES* aProperties = NULL );
+            const PROPERTIES* aProperties = NULL ) override;
 
-    virtual bool IsFootprintLibWritable( const wxString& aLibraryPath );
+    virtual bool IsFootprintLibWritable( const wxString& aLibraryPath ) override;
 
-    virtual void FootprintLibOptions( PROPERTIES* aListToAppendTo ) const;
+    virtual void FootprintLibOptions( PROPERTIES* aListToAppendTo ) const override;
 
     // Since I derive from PCB_IO, I have to implement this, else I'd inherit his, which is bad since
     // my lib_path is not his.  Note: it is impossible to create a Github library, but can the C.O.W. portion.
-    virtual void FootprintLibCreate( const wxString& aLibraryPath, const PROPERTIES* aProperties );
+    virtual void FootprintLibCreate( const wxString& aLibraryPath, const PROPERTIES* aProperties ) override;
 
     // Since I derive from PCB_IO, I have to implement this, else I'd inherit his, which is bad since
     // my lib_path is not his.  Note: it is impossible to delete a Github library, but can the C.O.W portion.
-    virtual bool FootprintLibDelete( const wxString& aLibraryPath, const PROPERTIES* aProperties );
+    virtual bool FootprintLibDelete( const wxString& aLibraryPath, const PROPERTIES* aProperties ) override;
 
     //-----</PLUGIN API>---------------------------------------------------------
 
diff --git a/pcbnew/globaleditpad.cpp b/pcbnew/globaleditpad.cpp
index 5b307cd..25bf67b 100644
--- a/pcbnew/globaleditpad.cpp
+++ b/pcbnew/globaleditpad.cpp
@@ -59,9 +59,9 @@ public:
     DIALOG_GLOBAL_PADS_EDITION( PCB_BASE_FRAME* aParent, D_PAD* aPad );
 
 private:
-    virtual void InstallPadEditor( wxCommandEvent& event );
-    virtual void PadPropertiesAccept( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void InstallPadEditor( wxCommandEvent& event ) override;
+    virtual void PadPropertiesAccept( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 };
 
 
diff --git a/pcbnew/gpcb_plugin.h b/pcbnew/gpcb_plugin.h
index 694d34b..20251b7 100644
--- a/pcbnew/gpcb_plugin.h
+++ b/pcbnew/gpcb_plugin.h
@@ -52,28 +52,28 @@ public:
 
     //-----<PLUGIN API>---------------------------------------------------------
 
-    virtual const wxString PluginName() const
+    virtual const wxString PluginName() const override
     {
         return wxT( "Geda PCB" );
     }
 
-    virtual const wxString GetFileExtension() const
+    virtual const wxString GetFileExtension() const override
     {
         return wxT( "fp" );
     }
 
     virtual wxArrayString FootprintEnumerate( const wxString& aLibraryPath,
-                                      const PROPERTIES* aProperties = NULL);
+                                      const PROPERTIES* aProperties = NULL) override;
 
     virtual MODULE* FootprintLoad( const wxString& aLibraryPath, const wxString& aFootprintName,
-                           const PROPERTIES* aProperties = NULL );
+                           const PROPERTIES* aProperties = NULL ) override;
 
     virtual void FootprintDelete( const wxString& aLibraryPath, const wxString& aFootprintName,
-                          const PROPERTIES* aProperties = NULL );
+                          const PROPERTIES* aProperties = NULL ) override;
 
-    virtual bool FootprintLibDelete( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL );
+    virtual bool FootprintLibDelete( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL ) override;
 
-    virtual bool IsFootprintLibWritable( const wxString& aLibraryPath );
+    virtual bool IsFootprintLibWritable( const wxString& aLibraryPath ) override;
 
     //-----</PLUGIN API>--------------------------------------------------------
 
diff --git a/pcbnew/import_dxf/dialog_dxf_import.h b/pcbnew/import_dxf/dialog_dxf_import.h
index 49c4498..cbe3d2a 100644
--- a/pcbnew/import_dxf/dialog_dxf_import.h
+++ b/pcbnew/import_dxf/dialog_dxf_import.h
@@ -52,7 +52,7 @@ private:
     static LAYER_NUM     m_layer;
 
     // Virtual event handlers
-    virtual void OnCancelClick( wxCommandEvent& event ) { event.Skip(); }
-    virtual void OnOKClick( wxCommandEvent& event );
-    virtual void OnBrowseDxfFiles( wxCommandEvent& event );
+    virtual void OnCancelClick( wxCommandEvent& event ) override { event.Skip(); }
+    virtual void OnOKClick( wxCommandEvent& event ) override;
+    virtual void OnBrowseDxfFiles( wxCommandEvent& event ) override;
 };
diff --git a/pcbnew/import_dxf/dxf2brd_items.h b/pcbnew/import_dxf/dxf2brd_items.h
index 53de328..e3319b2 100644
--- a/pcbnew/import_dxf/dxf2brd_items.h
+++ b/pcbnew/import_dxf/dxf2brd_items.h
@@ -103,71 +103,71 @@ private:
     // They are "call back" fonctions, called when the corresponding object
     // is read in dxf file
     // Depending of the application, they can do something or not
-    virtual void addHeader( const DRW_Header* aData );
-    virtual void addLType( const DRW_LType& aData ) {}
-    virtual void addLayer( const DRW_Layer& aData );
-    virtual void addDimStyle( const DRW_Dimstyle& aData ) {}
-    virtual void addBlock( const DRW_Block& aData ) {}
-    virtual void endBlock() {}
-    virtual void addPoint( const DRW_Point& aData ) {}
-    virtual void addLine( const DRW_Line& aData);
-    virtual void addRay( const DRW_Ray& aData ) {}
-    virtual void addXline( const DRW_Xline& aData ) {}
-    virtual void addCircle( const DRW_Circle& aData );
-    virtual void addArc( const DRW_Arc& aData );
-    virtual void addEllipse( const DRW_Ellipse& aData ) {}
-    virtual void addLWPolyline( const DRW_LWPolyline& aData );
-    virtual void addText( const DRW_Text& aData );
-    virtual void addPolyline( const DRW_Polyline& aData );
-    virtual void addSpline( const DRW_Spline* aData ) {}
-    virtual void addKnot( const DRW_Entity&) {}
-    virtual void addInsert( const DRW_Insert& aData ) {}
-    virtual void addTrace( const DRW_Trace& aData ) {}
-    virtual void addSolid( const DRW_Solid& aData ) {}
-    virtual void addMText( const DRW_MText& aData);
-    virtual void addDimAlign( const DRW_DimAligned* aData ) {}
-    virtual void addDimLinear( const DRW_DimLinear* aData ) {}
-    virtual void addDimRadial( const DRW_DimRadial* aData ) {}
-    virtual void addDimDiametric( const DRW_DimDiametric* aData ) {}
-    virtual void addDimAngular( const DRW_DimAngular* aData ) {}
-    virtual void addDimAngular3P( const DRW_DimAngular3p* aData ) {}
-    virtual void addDimOrdinate( const DRW_DimOrdinate* aData ) {}
-    virtual void addLeader( const DRW_Leader* aData ) {}
-    virtual void addHatch( const DRW_Hatch* aData ) {}
-    virtual void addImage( const DRW_Image* aData ) {}
-    virtual void linkImage( const DRW_ImageDef* aData ) {}
-
-    virtual void add3dFace( const DRW_3Dface& aData ) {}
-    virtual void addComment( const char*) {}
-
-    virtual void addVport( const DRW_Vport& aData ) {}
-
-    virtual void addTextStyle( const DRW_Textstyle& aData );
-
-    virtual void addViewport( const DRW_Viewport& aData ) {}
-
-    virtual void setBlock( const int aHandle ) {}
+    virtual void addHeader( const DRW_Header* aData ) override;
+    virtual void addLType( const DRW_LType& aData ) override {}
+    virtual void addLayer( const DRW_Layer& aData ) override;
+    virtual void addDimStyle( const DRW_Dimstyle& aData ) override {}
+    virtual void addBlock( const DRW_Block& aData ) override {}
+    virtual void endBlock() override {}
+    virtual void addPoint( const DRW_Point& aData ) override {}
+    virtual void addLine( const DRW_Line& aData) override;
+    virtual void addRay( const DRW_Ray& aData ) override {}
+    virtual void addXline( const DRW_Xline& aData ) override {}
+    virtual void addCircle( const DRW_Circle& aData ) override;
+    virtual void addArc( const DRW_Arc& aData ) override;
+    virtual void addEllipse( const DRW_Ellipse& aData ) override {}
+    virtual void addLWPolyline( const DRW_LWPolyline& aData ) override;
+    virtual void addText( const DRW_Text& aData ) override;
+    virtual void addPolyline( const DRW_Polyline& aData ) override;
+    virtual void addSpline( const DRW_Spline* aData ) override {}
+    virtual void addKnot( const DRW_Entity&) override {}
+    virtual void addInsert( const DRW_Insert& aData ) override {}
+    virtual void addTrace( const DRW_Trace& aData ) override {}
+    virtual void addSolid( const DRW_Solid& aData ) override {}
+    virtual void addMText( const DRW_MText& aData) override;
+    virtual void addDimAlign( const DRW_DimAligned* aData ) override {}
+    virtual void addDimLinear( const DRW_DimLinear* aData ) override {}
+    virtual void addDimRadial( const DRW_DimRadial* aData ) override {}
+    virtual void addDimDiametric( const DRW_DimDiametric* aData ) override {}
+    virtual void addDimAngular( const DRW_DimAngular* aData ) override {}
+    virtual void addDimAngular3P( const DRW_DimAngular3p* aData ) override {}
+    virtual void addDimOrdinate( const DRW_DimOrdinate* aData ) override {}
+    virtual void addLeader( const DRW_Leader* aData ) override {}
+    virtual void addHatch( const DRW_Hatch* aData ) override {}
+    virtual void addImage( const DRW_Image* aData ) override {}
+    virtual void linkImage( const DRW_ImageDef* aData ) override {}
+
+    virtual void add3dFace( const DRW_3Dface& aData ) override {}
+    virtual void addComment( const char*) override {}
+
+    virtual void addVport( const DRW_Vport& aData ) override {}
+
+    virtual void addTextStyle( const DRW_Textstyle& aData ) override;
+
+    virtual void addViewport( const DRW_Viewport& aData ) override {}
+
+    virtual void setBlock( const int aHandle ) override {}
 
     static wxString toDxfString( const wxString& aStr );
     static wxString toNativeString( const wxString& aData );
 
     // These functions are not used in Kicad.
     // But because they are virtual pure in DRW_Interface, they should be defined
-    virtual void writeTextstyles() {}
-    virtual void writeVports() {}
-    virtual void writeHeader( DRW_Header& aData ) {}
-    virtual void writeEntities() {}
-    virtual void writeLTypes() {}
-    virtual void writeLayers() {}
-    virtual void writeBlockRecords() {}
-    virtual void writeBlocks() {}
-    virtual void writeDimstyles() {}
+    virtual void writeTextstyles() override {}
+    virtual void writeVports() override {}
+    virtual void writeHeader( DRW_Header& aData ) override {}
+    virtual void writeEntities() override {}
+    virtual void writeLTypes() override {}
+    virtual void writeLayers() override {}
+    virtual void writeBlockRecords() override {}
+    virtual void writeBlocks() override {}
+    virtual void writeDimstyles() override {}
 
     void writeLine();
     void writeMtext();
 
-    virtual void addAppId( const DRW_AppId& data ) {}
-    virtual void writeAppId() {}
+    virtual void addAppId( const DRW_AppId& data ) override {}
+    virtual void writeAppId() override {}
 };
 
 #endif  // FILTERDXFRW_H
diff --git a/pcbnew/kicad_plugin.h b/pcbnew/kicad_plugin.h
index fa20e70..d161735 100644
--- a/pcbnew/kicad_plugin.h
+++ b/pcbnew/kicad_plugin.h
@@ -89,12 +89,12 @@ public:
 
     //-----<PLUGIN API>---------------------------------------------------------
 
-    virtual const wxString PluginName() const
+    virtual const wxString PluginName() const override
     {
         return wxT( "KiCad" );
     }
 
-    virtual const wxString GetFileExtension() const
+    virtual const wxString GetFileExtension() const override
     {
         // Would have used wildcards_and_files_ext.cpp's KiCadPcbFileExtension,
         // but to be pure, a plugin should not assume that it will always be linked
@@ -104,25 +104,25 @@ public:
     }
 
     virtual void Save( const wxString& aFileName, BOARD* aBoard,
-               const PROPERTIES* aProperties = NULL );
+               const PROPERTIES* aProperties = NULL ) override;
 
-    virtual BOARD* Load( const wxString& aFileName, BOARD* aAppendToMe, const PROPERTIES* aProperties = NULL );
+    virtual BOARD* Load( const wxString& aFileName, BOARD* aAppendToMe, const PROPERTIES* aProperties = NULL ) override;
 
-    virtual wxArrayString FootprintEnumerate( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL);
+    virtual wxArrayString FootprintEnumerate( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL) override;
 
     virtual MODULE* FootprintLoad( const wxString& aLibraryPath, const wxString& aFootprintName,
-                           const PROPERTIES* aProperties = NULL );
+                           const PROPERTIES* aProperties = NULL ) override;
 
     virtual void FootprintSave( const wxString& aLibraryPath, const MODULE* aFootprint,
-                        const PROPERTIES* aProperties = NULL );
+                        const PROPERTIES* aProperties = NULL ) override;
 
-    virtual void FootprintDelete( const wxString& aLibraryPath, const wxString& aFootprintName, const PROPERTIES* aProperties = NULL );
+    virtual void FootprintDelete( const wxString& aLibraryPath, const wxString& aFootprintName, const PROPERTIES* aProperties = NULL ) override;
 
-    virtual void FootprintLibCreate( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL);
+    virtual void FootprintLibCreate( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL) override;
 
-    virtual bool FootprintLibDelete( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL );
+    virtual bool FootprintLibDelete( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL ) override;
 
-    virtual bool IsFootprintLibWritable( const wxString& aLibraryPath );
+    virtual bool IsFootprintLibWritable( const wxString& aLibraryPath ) override;
 
     //-----</PLUGIN API>--------------------------------------------------------
 
diff --git a/pcbnew/legacy_plugin.h b/pcbnew/legacy_plugin.h
index ce6f7f4..9b654fb 100644
--- a/pcbnew/legacy_plugin.h
+++ b/pcbnew/legacy_plugin.h
@@ -67,17 +67,17 @@ public:
 
     //-----<PLUGIN IMPLEMENTATION>----------------------------------------------
 
-    virtual const wxString PluginName() const
+    virtual const wxString PluginName() const override
     {
         return wxT( "KiCad-Legacy" );
     }
 
-    virtual const wxString GetFileExtension() const
+    virtual const wxString GetFileExtension() const override
     {
         return wxT( "brd" );
     }
 
-    virtual BOARD* Load( const wxString& aFileName, BOARD* aAppendToMe, const PROPERTIES* aProperties = NULL );
+    virtual BOARD* Load( const wxString& aFileName, BOARD* aAppendToMe, const PROPERTIES* aProperties = NULL ) override;
 
     /* we let go of "save" support when the number of CU layers were expanded from 16 to 32.
     void Save( const wxString& aFileName, BOARD* aBoard, const PROPERTIES* aProperties = NULL );
@@ -89,14 +89,14 @@ public:
     void FootprintLibCreate( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL );
     */
 
-    virtual wxArrayString FootprintEnumerate( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL);
+    virtual wxArrayString FootprintEnumerate( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL) override;
 
     virtual MODULE* FootprintLoad( const wxString& aLibraryPath, const wxString& aFootprintName,
-                                    const PROPERTIES* aProperties = NULL );
+                                    const PROPERTIES* aProperties = NULL ) override;
 
-    virtual bool FootprintLibDelete( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL );
+    virtual bool FootprintLibDelete( const wxString& aLibraryPath, const PROPERTIES* aProperties = NULL ) override;
 
-    virtual bool IsFootprintLibWritable( const wxString& aLibraryPath );
+    virtual bool IsFootprintLibWritable( const wxString& aLibraryPath ) override;
 
     //-----</PLUGIN IMPLEMENTATION>---------------------------------------------
 
diff --git a/pcbnew/module_editor_frame.h b/pcbnew/module_editor_frame.h
index 60e3e96..c5a2a7e 100644
--- a/pcbnew/module_editor_frame.h
+++ b/pcbnew/module_editor_frame.h
@@ -54,14 +54,14 @@ public:
      */
     static const wxChar* GetFootprintEditorFrameName();
 
-    virtual BOARD_DESIGN_SETTINGS& GetDesignSettings() const;
-    virtual void SetDesignSettings( const BOARD_DESIGN_SETTINGS& aSettings );
+    virtual BOARD_DESIGN_SETTINGS& GetDesignSettings() const override;
+    virtual void SetDesignSettings( const BOARD_DESIGN_SETTINGS& aSettings ) override;
 
-    virtual const PCB_PLOT_PARAMS& GetPlotSettings() const;
-    virtual void SetPlotSettings( const PCB_PLOT_PARAMS& aSettings );
+    virtual const PCB_PLOT_PARAMS& GetPlotSettings() const override;
+    virtual void SetPlotSettings( const PCB_PLOT_PARAMS& aSettings ) override;
 
-    virtual void LoadSettings( wxConfigBase* aCfg );
-    virtual void SaveSettings( wxConfigBase* aCfg );
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     /**
      * Function GetConfigurationSettings
@@ -79,7 +79,7 @@ public:
 
     void InstallOptionsFrame( const wxPoint& pos );
 
-    virtual void OnCloseWindow( wxCloseEvent& Event );
+    virtual void OnCloseWindow( wxCloseEvent& Event ) override;
     void CloseModuleEditor( wxCommandEvent& Event );
 
     void Process_Special_Functions( wxCommandEvent& event );
@@ -90,25 +90,25 @@ public:
      * Function RedrawActiveWindoow
      * draws the footprint editor BOARD, and others elements such as axis and grid.
      */
-    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg );
+    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg ) override;
 
     /**
      * Function ReCreateHToolbar
      * create the main horizontal toolbar for the footprint editor
      */
-    virtual void ReCreateHToolbar();
+    virtual void ReCreateHToolbar() override;
 
-    virtual void ReCreateVToolbar();
+    virtual void ReCreateVToolbar() override;
     void ReCreateOptToolbar();
-    virtual void ReCreateAuxiliaryToolbar();
-    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos );
+    virtual void ReCreateAuxiliaryToolbar() override;
+    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos ) override;
 
     /**
      * Function OnLeftDClick
      * handles the double click in the footprint editor:
      * If the double clicked item is editable: call the corresponding editor.
      */
-    virtual void OnLeftDClick( wxDC* DC, const wxPoint& MousePos );
+    virtual void OnLeftDClick( wxDC* DC, const wxPoint& MousePos ) override;
 
     /**
      * Function OnRightClick
@@ -116,14 +116,14 @@ public:
      * Create the pop up menu
      * After this menu is built, the standard ZOOM menu is added
      */
-    virtual bool OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu );
+    virtual bool OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu ) override;
 
     /**
      * @brief (Re)Create the menubar for the module editor frame
      */
-    virtual void ReCreateMenuBar();
+    virtual void ReCreateMenuBar() override;
 
-    virtual void ToolOnRightClick( wxCommandEvent& event );
+    virtual void ToolOnRightClick( wxCommandEvent& event ) override;
     void OnSelectOptionToolbar( wxCommandEvent& event );
 
     /**
@@ -143,7 +143,7 @@ public:
      * case insensitive
      * </p>
      */
-    virtual bool OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, EDA_ITEM* aItem = NULL );
+    virtual bool OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, EDA_ITEM* aItem = NULL ) override;
 
     BOARD_ITEM* PrepareItemForHotkey( bool failIfCurrentlyEdited );
 
@@ -158,9 +158,9 @@ public:
      * Function Show3D_Frame
      * displays 3D view of the footprint (module) being edited.
      */
-    virtual void Show3D_Frame( wxCommandEvent& event );
+    virtual void Show3D_Frame( wxCommandEvent& event ) override;
 
-    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 );
+    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 ) override;
     void OnVerticalToolbar( wxCommandEvent& aEvent );
 
     void OnUpdateVerticalToolbar( wxUpdateUIEvent& aEvent );
@@ -174,7 +174,7 @@ public:
     void OnUpdateSelectCurrentLib( wxUpdateUIEvent& aEvent );
 
     ///> @copydoc PCB_BASE_EDIT_FRAME::OnEditItemRequest()
-    virtual void OnEditItemRequest( wxDC* aDC, BOARD_ITEM* aItem );
+    virtual void OnEditItemRequest( wxDC* aDC, BOARD_ITEM* aItem ) override;
 
     /**
      * Function LoadModuleFromBoard
@@ -205,7 +205,7 @@ public:
      * and prepare, if needed the refresh of the 3D frame showing the footprint
      * do not forget to call the basic OnModify function to update auxiliary info
      */
-    virtual void OnModify();
+    virtual void OnModify() override;
 
     /**
      * Function ToPrinter
@@ -223,7 +223,7 @@ public:
      * @param aData = a pointer on an auxiliary data (NULL if not used)
      */
     virtual void PrintPage( wxDC* aDC, LSET aPrintMaskLayer, bool aPrintMirrorMode,
-                            void * aData = NULL);
+                            void * aData = NULL) override;
 
     // BOARD handling
 
@@ -235,7 +235,7 @@ public:
     bool Clear_Pcb( bool aQuery );
 
     /* handlers for block commands */
-    virtual int BlockCommand( int key );
+    virtual int BlockCommand( int key ) override;
 
     /**
      * Function HandleBlockPlace
@@ -244,7 +244,7 @@ public:
      *  - block move & drag
      *  - block copy & paste
      */
-    virtual void HandleBlockPlace( wxDC* DC );
+    virtual void HandleBlockPlace( wxDC* DC ) override;
 
     /**
      * Function HandleBlockEnd( )
@@ -256,7 +256,7 @@ public:
      * @return false if no item selected, or command finished,
      * true if some items found and HandleBlockPlace must be called later
      */
-    virtual bool HandleBlockEnd( wxDC* DC );
+    virtual bool HandleBlockEnd( wxDC* DC ) override;
 
     BOARD_ITEM* ModeditLocateAndDisplay( int aHotKeyCode = 0 );
 
@@ -273,7 +273,7 @@ public:
      */
     virtual void SaveCopyInUndoList( BOARD_ITEM* aItem,
                                      UNDO_REDO_T aTypeCommand,
-                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) );
+                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) ) override;
 
     /**
      * Function SaveCopyInUndoList (overloaded).
@@ -286,7 +286,7 @@ public:
      */
     virtual void SaveCopyInUndoList( const PICKED_ITEMS_LIST& aItemsList,
                                      UNDO_REDO_T aTypeCommand,
-                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) );
+                                     const wxPoint& aTransformPoint = wxPoint( 0, 0 ) ) override;
 
     /**
      * Function RestoreCopyFromUndoList
@@ -294,7 +294,7 @@ public:
      *  - Place the current edited library component in Redo list
      *  - Get old version of the current edited library component
      */
-    virtual void RestoreCopyFromUndoList( wxCommandEvent& aEvent );
+    virtual void RestoreCopyFromUndoList( wxCommandEvent& aEvent ) override;
 
     /**
      * Function RestoreCopyFromRedoList
@@ -302,7 +302,7 @@ public:
      *  - Place the current edited library component in undo list
      *  - Get old version of the current edited library component
      */
-    virtual void RestoreCopyFromRedoList( wxCommandEvent& aEvent );
+    virtual void RestoreCopyFromRedoList( wxCommandEvent& aEvent ) override;
 
     /// Return the current library nickname.
     const wxString GetCurrentLib() const;
@@ -479,7 +479,7 @@ public:
      * Function IsGridVisible() , virtual
      * @return true if the grid must be shown
      */
-    virtual bool IsGridVisible() const;
+    virtual bool IsGridVisible() const override;
 
     /**
      * Function SetGridVisibility() , virtual
@@ -487,19 +487,19 @@ public:
      * if you want to store/retrieve the grid visibility in configuration.
      * @param aVisible = true if the grid must be shown
      */
-    virtual void SetGridVisibility( bool aVisible );
+    virtual void SetGridVisibility( bool aVisible ) override;
 
     /**
      * Function GetGridColor() , virtual
      * @return the color of the grid
      */
-    virtual EDA_COLOR_T GetGridColor() const;
+    virtual EDA_COLOR_T GetGridColor() const override;
 
     ///> @copydoc PCB_BASE_FRAME::SetActiveLayer()
-    virtual void SetActiveLayer( LAYER_ID aLayer );
+    virtual void SetActiveLayer( LAYER_ID aLayer ) override;
 
     ///> @copydoc EDA_DRAW_FRAME::UseGalCanvas()
-    virtual void UseGalCanvas( bool aEnable );
+    virtual void UseGalCanvas( bool aEnable ) override;
 
     DECLARE_EVENT_TABLE()
 
diff --git a/pcbnew/modview_frame.h b/pcbnew/modview_frame.h
index 5be85b4..0d6f754 100644
--- a/pcbnew/modview_frame.h
+++ b/pcbnew/modview_frame.h
@@ -59,7 +59,7 @@ public:
      */
     static const wxChar* GetFootprintViewerFrameName();
 
-    virtual EDA_COLOR_T GetGridColor() const;
+    virtual EDA_COLOR_T GetGridColor() const override;
 
     /**
      * Function ReCreateLibraryList
@@ -70,7 +70,7 @@ public:
     void ReCreateLibraryList();
 
     ///> @copydoc EDA_DRAW_FRAME::UseGalCanvas()
-    virtual void UseGalCanvas( bool aEnable );
+    virtual void UseGalCanvas( bool aEnable ) override;
 
 private:
 
@@ -85,7 +85,7 @@ private:
     const wxString      getCurFootprintName();
     void                setCurFootprintName( const wxString& aName );
 
-    virtual void OnSize( wxSizeEvent& event );
+    virtual void OnSize( wxSizeEvent& event ) override;
 
     void ReCreateFootprintList();
     void OnIterateFootprintList( wxCommandEvent& event );
@@ -101,22 +101,22 @@ private:
      * Display the current selected component.
      * If the component is an alias, the ROOT component is displayed
      */
-    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg );
+    virtual void RedrawActiveWindow( wxDC* DC, bool EraseBg ) override;
 
-    virtual void OnCloseWindow( wxCloseEvent& Event );
+    virtual void OnCloseWindow( wxCloseEvent& Event ) override;
     void CloseFootprintViewer( wxCommandEvent& event );
 
-    virtual void ReCreateHToolbar();
-    virtual void ReCreateVToolbar();
-    virtual void ReCreateMenuBar();
+    virtual void ReCreateHToolbar() override;
+    virtual void ReCreateVToolbar() override;
+    virtual void ReCreateMenuBar() override;
 
-    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos );
+    virtual void OnLeftClick( wxDC* DC, const wxPoint& MousePos ) override;
     void ClickOnLibList( wxCommandEvent& event );
     void ClickOnFootprintList( wxCommandEvent& event );
     void DClickOnFootprintList( wxCommandEvent& event );
     void OnSetRelativeOffset( wxCommandEvent& event );
 
-    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 );
+    virtual bool GeneralControl( wxDC* aDC, const wxPoint& aPosition, int aHotKey = 0 ) override;
 
     /**
      * Function OnHotKey
@@ -126,17 +126,17 @@ private:
      * case insensitive
      * </p>
      */
-    virtual bool OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, EDA_ITEM* aItem = NULL );
+    virtual bool OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, EDA_ITEM* aItem = NULL ) override;
 
-    virtual void LoadSettings( wxConfigBase* aCfg );
-    virtual void SaveSettings( wxConfigBase* aCfg );
+    virtual void LoadSettings( wxConfigBase* aCfg ) override;
+    virtual void SaveSettings( wxConfigBase* aCfg ) override;
 
     /**
      * Function OnActivate
      * is called when the frame frame is activate to reload the libraries and component lists
      * that can be changed by the schematic editor or the library editor.
      */
-    virtual void OnActivate( wxActivateEvent& event );
+    virtual void OnActivate( wxActivateEvent& event ) override;
 
     void SelectCurrentLibrary( wxCommandEvent& event );
 
@@ -161,13 +161,13 @@ private:
      */
     void SelectAndViewFootprint( int aMode );
 
-    virtual bool OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu );
+    virtual bool OnRightClick( const wxPoint& MousePos, wxMenu* PopMenu ) override;
 
     /**
      * Function Show3D_Frame (virtual)
      * displays 3D view of the footprint (module) being edited.
      */
-    virtual void Show3D_Frame( wxCommandEvent& event );
+    virtual void Show3D_Frame( wxCommandEvent& event ) override;
 
     /**
      * Function Update3D_Frame
@@ -182,9 +182,9 @@ private:
      * Virtual functions, not used here, but needed by PCB_BASE_FRAME
      * (virtual pure functions )
      */
-    virtual void OnLeftDClick( wxDC*, const wxPoint& ) {}
-    virtual void SaveCopyInUndoList( BOARD_ITEM*, UNDO_REDO_T, const wxPoint& ) {}
-    virtual void SaveCopyInUndoList( const PICKED_ITEMS_LIST&, UNDO_REDO_T, const wxPoint &) {}
+    virtual void OnLeftDClick( wxDC*, const wxPoint& ) override {}
+    virtual void SaveCopyInUndoList( BOARD_ITEM*, UNDO_REDO_T, const wxPoint& ) override {}
+    virtual void SaveCopyInUndoList( const PICKED_ITEMS_LIST&, UNDO_REDO_T, const wxPoint &) override {}
 
     void updateView();
 
diff --git a/pcbnew/netlist_reader.h b/pcbnew/netlist_reader.h
index f473aae..f316139 100644
--- a/pcbnew/netlist_reader.h
+++ b/pcbnew/netlist_reader.h
@@ -277,7 +277,7 @@ public:
      * @throw IO_ERROR if a file IO error occurs.
      * @throw PARSE_ERROR if an error occurs while parsing the file.
      */
-    virtual void LoadNetlist() throw ( IO_ERROR, PARSE_ERROR, boost::bad_pointer );
+    virtual void LoadNetlist() throw ( IO_ERROR, PARSE_ERROR, boost::bad_pointer ) override;
 };
 
 
@@ -392,7 +392,7 @@ public:
             delete m_parser;
     }
 
-    virtual void LoadNetlist() throw ( IO_ERROR, PARSE_ERROR, boost::bad_pointer );
+    virtual void LoadNetlist() throw ( IO_ERROR, PARSE_ERROR, boost::bad_pointer ) override;
 };
 
 
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcad_plugin.h b/pcbnew/pcad2kicadpcb_plugin/pcad_plugin.h
index 32208f8..788fa3a 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcad_plugin.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcad_plugin.h
@@ -39,13 +39,13 @@ public:
 
     // -----<PUBLIC PLUGIN API>--------------------------------------------------
 
-    virtual const wxString  PluginName() const;
+    virtual const wxString  PluginName() const override;
 
     virtual BOARD*  Load( const wxString&   aFileName,
                           BOARD*            aAppendToMe,
-                          const PROPERTIES* aProperties = NULL );
+                          const PROPERTIES* aProperties = NULL ) override;
 
-    virtual const wxString  GetFileExtension() const;
+    virtual const wxString  GetFileExtension() const override;
 
     // -----</PUBLIC PLUGIN API>-------------------------------------------------
 
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb.h b/pcbnew/pcad2kicadpcb_plugin/pcb.h
index 552c584..524d32f 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb.h
@@ -53,17 +53,17 @@ public:
     PCB( BOARD* aBoard );
     ~PCB();
 
-    virtual LAYER_ID        GetKiCadLayer( int aPCadLayer );
-    virtual LAYER_TYPE_T    GetLayerType( int aPCadLayer );
-    virtual wxString        GetLayerNetNameRef( int aPCadLayer );
-    virtual int             GetNewTimestamp();
-    virtual int             GetNetCode( wxString aNetName );
+    virtual LAYER_ID        GetKiCadLayer( int aPCadLayer ) override;
+    virtual LAYER_TYPE_T    GetLayerType( int aPCadLayer ) override;
+    virtual wxString        GetLayerNetNameRef( int aPCadLayer ) override;
+    virtual int             GetNewTimestamp() override;
+    virtual int             GetNetCode( wxString aNetName ) override;
 
     void            Parse( wxStatusBar* aStatusBar,
                            wxXmlDocument* aXmlDoc,
                            wxString     aActualConversion );
 
-    virtual void            AddToBoard();
+    virtual void            AddToBoard() override;
 
 private:
     int             m_timestamp_cnt;
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_arc.h b/pcbnew/pcad2kicadpcb_plugin/pcb_arc.h
index e1e9542..d125cee 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_arc.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_arc.h
@@ -50,10 +50,10 @@ public:
     virtual void    Parse( XNODE* aNode, int aLayer,
                            wxString aDefaultMeasurementUnit, wxString aActualConversion );
 
-    virtual void    SetPosOffset( int aX_offs, int aY_offs );
-    virtual void    Flip();
-    virtual void    AddToModule( MODULE* aModule );
-    virtual void    AddToBoard();
+    virtual void    SetPosOffset( int aX_offs, int aY_offs ) override;
+    virtual void    Flip() override;
+    virtual void    AddToModule( MODULE* aModule ) override;
+    virtual void    AddToBoard() override;
 };
 
 } // namespace PCAD2KICAD
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_copper_pour.h b/pcbnew/pcad2kicadpcb_plugin/pcb_copper_pour.h
index 209b75f..5de462e 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_copper_pour.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_copper_pour.h
@@ -46,7 +46,7 @@ public:
     virtual bool Parse( XNODE*          aNode,
                         wxString        aDefaultMeasurementUnit,
                         wxString        aActualConversion,
-                        wxStatusBar*    aStatusBar );
+                        wxStatusBar*    aStatusBar ) override;
 };
 
 } // namespace PCAD2KICAD
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_line.h b/pcbnew/pcad2kicadpcb_plugin/pcb_line.h
index 52fbb6f..c353918 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_line.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_line.h
@@ -51,10 +51,10 @@ public:
                            int          aLayer,
                            wxString     aDefaultMeasurementUnit,
                            wxString     aActualConversion );
-    virtual void    SetPosOffset( int aX_offs, int aY_offs );
-    virtual void    Flip();
-    virtual void    AddToModule( MODULE* aModule );
-    virtual void    AddToBoard();
+    virtual void    SetPosOffset( int aX_offs, int aY_offs ) override;
+    virtual void    Flip() override;
+    virtual void    AddToModule( MODULE* aModule ) override;
+    virtual void    AddToBoard() override;
 };
 
 } // namespace PCAD2KICAD
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_module.h b/pcbnew/pcad2kicadpcb_plugin/pcb_module.h
index a9e3af1..ba290bb 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_module.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_module.h
@@ -62,8 +62,8 @@ public:
     virtual void    Parse( XNODE*   aNode, wxStatusBar* aStatusBar,
                            wxString aDefaultMeasurementUnit, wxString aActualConversion );
 
-    virtual void    Flip();
-    virtual void    AddToBoard();
+    virtual void    Flip() override;
+    virtual void    AddToBoard() override;
 
 private:
     XNODE*          FindPatternMultilayerSection( XNODE* aNode, wxString* aPatGraphRefName );
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_pad.h b/pcbnew/pcad2kicadpcb_plugin/pcb_pad.h
index 9ee5a83..8fe2826 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_pad.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_pad.h
@@ -51,9 +51,9 @@ public:
     virtual void    Parse( XNODE*       aNode,
                            wxString     aDefaultMeasurementUnit,
                            wxString     aActualConversion );
-    virtual void    Flip();
+    virtual void    Flip() override;
     void            AddToModule( MODULE* aModule, int aRotation, bool aEncapsulatedPad );
-    virtual void    AddToBoard();
+    virtual void    AddToBoard() override;
 
 private:
     wxString m_defaultPinDes;
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_pad_shape.h b/pcbnew/pcad2kicadpcb_plugin/pcb_pad_shape.h
index adc5027..3780682 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_pad_shape.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_pad_shape.h
@@ -51,7 +51,7 @@ public:
                            wxString     aDefaultMeasurementUnit,
                            wxString     aActualConversion );
 
-    virtual void    AddToBoard();
+    virtual void    AddToBoard() override;
 };
 
 WX_DEFINE_ARRAY( PCB_PAD_SHAPE*, PCB_PAD_SHAPES_ARRAY );
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_plane.h b/pcbnew/pcad2kicadpcb_plugin/pcb_plane.h
index 6ace28b..95fbab4 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_plane.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_plane.h
@@ -45,7 +45,7 @@ public:
     virtual bool Parse( XNODE*          aNode,
                         wxString        aDefaultMeasurementUnit,
                         wxString        aActualConversion,
-                        wxStatusBar*    aStatusBar );
+                        wxStatusBar*    aStatusBar ) override;
 };
 
 } // namespace PCAD2KICAD
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_polygon.h b/pcbnew/pcad2kicadpcb_plugin/pcb_polygon.h
index e58342e..f216f0d 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_polygon.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_polygon.h
@@ -56,9 +56,9 @@ public:
                         wxString        aActualConversion,
                         wxStatusBar*    aStatusBar );
 
-    virtual void    SetPosOffset( int aX_offs, int aY_offs );
-    virtual void    AddToModule( MODULE* aModule );
-    virtual void    AddToBoard();
+    virtual void    SetPosOffset( int aX_offs, int aY_offs ) override;
+    virtual void    AddToModule( MODULE* aModule ) override;
+    virtual void    AddToBoard() override;
 
 // protected:
     void            AssignNet( wxString aNetName );
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_text.h b/pcbnew/pcad2kicadpcb_plugin/pcb_text.h
index f90dfe0..d81bf09 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_text.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_text.h
@@ -48,8 +48,8 @@ public:
                            int          aLayer,
                            wxString     aDefaultMeasurementUnit,
                            wxString     aActualConversion );
-    virtual void    AddToModule( MODULE* aModule );
-    virtual void    AddToBoard();
+    virtual void    AddToModule( MODULE* aModule ) override;
+    virtual void    AddToBoard() override;
 
 // virtual void    SetPosOffset( int aX_offs, int aY_offs );
 };
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_via.h b/pcbnew/pcad2kicadpcb_plugin/pcb_via.h
index 05b5c3a..d29ac7d 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_via.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_via.h
@@ -46,7 +46,7 @@ public:
 
     virtual void Parse( XNODE*      aNode,
                         wxString    aDefaultMeasurementUnit,
-                        wxString    aActualConversion );
+                        wxString    aActualConversion ) override;
 };
 
 } // namespace PCAD2KICAD
diff --git a/pcbnew/pcad2kicadpcb_plugin/pcb_via_shape.h b/pcbnew/pcad2kicadpcb_plugin/pcb_via_shape.h
index d12fa62..9eb222d 100644
--- a/pcbnew/pcad2kicadpcb_plugin/pcb_via_shape.h
+++ b/pcbnew/pcad2kicadpcb_plugin/pcb_via_shape.h
@@ -44,7 +44,7 @@ public:
 
     virtual void Parse( XNODE*      aNode,
                         wxString    aDefaultMeasurementUnit,
-                        wxString    aActualConversion );
+                        wxString    aActualConversion ) override;
 };
 
 } // namespace PCAD2KICAD
diff --git a/pcbnew/pcb_draw_panel_gal.h b/pcbnew/pcb_draw_panel_gal.h
index 26ac94f..4d80d12 100644
--- a/pcbnew/pcb_draw_panel_gal.h
+++ b/pcbnew/pcb_draw_panel_gal.h
@@ -65,10 +65,10 @@ public:
     void UseColorScheme( const COLORS_DESIGN_SETTINGS* aSettings );
 
     ///> @copydoc EDA_DRAW_PANEL_GAL::SetHighContrastLayer()
-    virtual void SetHighContrastLayer( LAYER_ID aLayer );
+    virtual void SetHighContrastLayer( LAYER_ID aLayer ) override;
 
     ///> @copydoc EDA_DRAW_PANEL_GAL::SetTopLayer()
-    virtual void SetTopLayer( LAYER_ID aLayer );
+    virtual void SetTopLayer( LAYER_ID aLayer ) override;
 
     /**
      * Function SyncLayersVisibility
diff --git a/pcbnew/pcb_painter.h b/pcbnew/pcb_painter.h
index 92d1d87..bc0108a 100644
--- a/pcbnew/pcb_painter.h
+++ b/pcbnew/pcb_painter.h
@@ -79,7 +79,7 @@ public:
     PCB_RENDER_SETTINGS();
 
     /// @copydoc RENDER_SETTINGS::ImportLegacyColors()
-    virtual void ImportLegacyColors( const COLORS_DESIGN_SETTINGS* aSettings );
+    virtual void ImportLegacyColors( const COLORS_DESIGN_SETTINGS* aSettings ) override;
 
     /**
      * Function LoadDisplayOptions
@@ -90,7 +90,7 @@ public:
     void LoadDisplayOptions( const DISPLAY_OPTIONS* aOptions );
 
     /// @copydoc RENDER_SETTINGS::GetColor()
-    virtual const COLOR4D& GetColor( const VIEW_ITEM* aItem, int aLayer ) const;
+    virtual const COLOR4D& GetColor( const VIEW_ITEM* aItem, int aLayer ) const override;
 
     /**
      * Function GetLayerColor
@@ -139,7 +139,7 @@ public:
 
 protected:
     ///> @copydoc RENDER_SETTINGS::Update()
-    virtual void update();
+    virtual void update() override;
 
     ///> Colors for all layers (normal)
     COLOR4D m_layerColors[TOTAL_LAYER_COUNT];
@@ -183,19 +183,19 @@ public:
     PCB_PAINTER( GAL* aGal );
 
     /// @copydoc PAINTER::ApplySettings()
-    virtual void ApplySettings( const RENDER_SETTINGS* aSettings )
+    virtual void ApplySettings( const RENDER_SETTINGS* aSettings ) override
     {
         m_pcbSettings = *static_cast<const PCB_RENDER_SETTINGS*>( aSettings );
     }
 
     /// @copydoc PAINTER::GetSettings()
-    virtual RENDER_SETTINGS* GetSettings()
+    virtual RENDER_SETTINGS* GetSettings() override
     {
         return &m_pcbSettings;
     }
 
     /// @copydoc PAINTER::Draw()
-    virtual bool Draw( const VIEW_ITEM* aItem, int aLayer );
+    virtual bool Draw( const VIEW_ITEM* aItem, int aLayer ) override;
 
 protected:
     PCB_RENDER_SETTINGS m_pcbSettings;
diff --git a/pcbnew/pcbnew.cpp b/pcbnew/pcbnew.cpp
index afb7b15..249bab2 100644
--- a/pcbnew/pcbnew.cpp
+++ b/pcbnew/pcbnew.cpp
@@ -103,11 +103,11 @@ static struct IFACE : public KIFACE_I
         KIFACE_I( aName, aType )
     {}
 
-    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits );
+    virtual bool OnKifaceStart( PGM_BASE* aProgram, int aCtlBits ) override;
 
-    virtual void OnKifaceEnd();
+    virtual void OnKifaceEnd() override;
 
-    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 )
+    virtual wxWindow* CreateWindow( wxWindow* aParent, int aClassId, KIWAY* aKiway, int aCtlBits = 0 ) override
     {
         wxWindow* frame = NULL;
 
@@ -162,7 +162,7 @@ static struct IFACE : public KIFACE_I
      *
      * @return void* - and must be cast into the know type.
      */
-    virtual void* IfaceOrAddress( int aDataId )
+    virtual void* IfaceOrAddress( int aDataId ) override
     {
         return NULL;
     }
diff --git a/pcbnew/printout_controler.h b/pcbnew/printout_controler.h
index 053805e..101c5f4 100644
--- a/pcbnew/printout_controler.h
+++ b/pcbnew/printout_controler.h
@@ -111,9 +111,9 @@ public:
                                EDA_DRAW_FRAME*         aParent,
                                const wxString&         aTitle );
 
-    virtual bool OnPrintPage( int aPage );
+    virtual bool OnPrintPage( int aPage ) override;
 
-    virtual bool HasPage( int aPage )
+    virtual bool HasPage( int aPage ) override
     {
         if( aPage <= m_PrintParams.m_PageCount )
             return true;
@@ -121,7 +121,7 @@ public:
             return false;
     }
 
-    virtual void GetPageInfo( int* minPage, int* maxPage, int* selPageFrom, int* selPageTo );
+    virtual void GetPageInfo( int* minPage, int* maxPage, int* selPageFrom, int* selPageTo ) override;
 
     void DrawPage();
 };
diff --git a/pcbnew/ratsnest.cpp b/pcbnew/ratsnest.cpp
index b658baa..af491ad 100644
--- a/pcbnew/ratsnest.cpp
+++ b/pcbnew/ratsnest.cpp
@@ -88,7 +88,7 @@ public:
      * @param aItem2 = other item
      * @return the weight between items ( the rectilinear distance )
      */
-    virtual int GetWeight( int aItem1, int aItem2 );
+    virtual int GetWeight( int aItem1, int aItem2 ) override;
 };
 
 
diff --git a/pcbnew/ratsnest_data.h b/pcbnew/ratsnest_data.h
index 66e446d..ffdda1f 100644
--- a/pcbnew/ratsnest_data.h
+++ b/pcbnew/ratsnest_data.h
@@ -75,7 +75,7 @@ struct RN_NODE_FILTER : public std::unary_function<const RN_NODE_PTR&, bool>
 ///> Filters out nodes that have the flag set.
 struct WITHOUT_FLAG : public RN_NODE_FILTER
 {
-    virtual bool operator()( const RN_NODE_PTR& aNode ) const
+    virtual bool operator()( const RN_NODE_PTR& aNode ) const override
     {
         return !aNode->GetFlag();
     }
diff --git a/pcbnew/ratsnest_viewitem.h b/pcbnew/ratsnest_viewitem.h
index e357be2..0a89b2f 100644
--- a/pcbnew/ratsnest_viewitem.h
+++ b/pcbnew/ratsnest_viewitem.h
@@ -44,25 +44,23 @@ public:
     RATSNEST_VIEWITEM( RN_DATA* aData );
 
     /// @copydoc VIEW_ITEM::ViewBBox()
-    virtual const BOX2I ViewBBox() const;
+    virtual const BOX2I ViewBBox() const override;
 
     /// @copydoc VIEW_ITEM::ViewDraw()
-    virtual void ViewDraw( int aLayer, GAL* aGal ) const;
+    virtual void ViewDraw( int aLayer, GAL* aGal ) const override;
 
     /// @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
 #if defined(DEBUG)
     /// @copydoc EDA_ITEM::Show()
-    virtual void Show( int x, std::ostream& st ) const
-    {
-    }
+    virtual void Show( int x, std::ostream& st ) const override { }
 #endif
 
     /** Get class name
      * @return  string "RATSNEST_VIEWITEM"
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return "RATSNEST_VIEWITEM";
     }
diff --git a/pcbnew/router/length_tuner_tool.h b/pcbnew/router/length_tuner_tool.h
index 9c206f0..c1c1544 100644
--- a/pcbnew/router/length_tuner_tool.h
+++ b/pcbnew/router/length_tuner_tool.h
@@ -33,7 +33,7 @@ public:
     LENGTH_TUNER_TOOL();
     ~LENGTH_TUNER_TOOL();
 
-    virtual void Reset( RESET_REASON aReason );
+    virtual void Reset( RESET_REASON aReason ) override;
 
     int TuneSingleTrace( const TOOL_EVENT& aEvent );
     int TuneDiffPair( const TOOL_EVENT& aEvent );
diff --git a/pcbnew/router/pns_diff_pair.h b/pcbnew/router/pns_diff_pair.h
index 620d700..6a14789 100644
--- a/pcbnew/router/pns_diff_pair.h
+++ b/pcbnew/router/pns_diff_pair.h
@@ -299,7 +299,7 @@ public:
         return aItem && DIFF_PAIR == aItem->Kind();
     }
 
-    virtual PNS_DIFF_PAIR * Clone() const { assert(false); return NULL; }
+    virtual PNS_DIFF_PAIR * Clone() const override { assert(false); return NULL; }
 
     static PNS_DIFF_PAIR* AssembleDp ( PNS_LINE *aLine );
 
diff --git a/pcbnew/router/pns_diff_pair_placer.h b/pcbnew/router/pns_diff_pair_placer.h
index 3578bbc..3940812 100644
--- a/pcbnew/router/pns_diff_pair_placer.h
+++ b/pcbnew/router/pns_diff_pair_placer.h
@@ -62,7 +62,7 @@ public:
      * Starts routing a single track at point aP, taking item aStartItem as anchor
      * (unless NULL).
      */
-    virtual bool Start( const VECTOR2I& aP, PNS_ITEM* aStartItem );
+    virtual bool Start( const VECTOR2I& aP, PNS_ITEM* aStartItem ) override;
 
     /**
      * Function Move()
@@ -71,7 +71,7 @@ public:
      * aEndItem as anchor (if not NULL).
      * (unless NULL).
      */
-    virtual bool Move( const VECTOR2I& aP, PNS_ITEM* aEndItem );
+    virtual bool Move( const VECTOR2I& aP, PNS_ITEM* aEndItem ) override;
 
     /**
      * Function FixRoute()
@@ -82,28 +82,28 @@ public:
      * result is violating design rules - in such case, the track is only committed
      * if Settings.CanViolateDRC() is on.
      */
-    virtual bool FixRoute( const VECTOR2I& aP, PNS_ITEM* aEndItem );
+    virtual bool FixRoute( const VECTOR2I& aP, PNS_ITEM* aEndItem ) override;
 
     /**
      * Function ToggleVia()
      *
      * Enables/disables a via at the end of currently routed trace.
      */
-    virtual bool ToggleVia( bool aEnabled );
+    virtual bool ToggleVia( bool aEnabled ) override;
 
     /**
      * Function SetLayer()
      *
      * Sets the current routing layer.
      */
-    virtual bool SetLayer( int aLayer );
+    virtual bool SetLayer( int aLayer ) override;
 
     /**
      * Function Traces()
      *
      * Returns the complete routed line, as a single-member PNS_ITEMSET.
      */
-    virtual const PNS_ITEMSET Traces();
+    virtual const PNS_ITEMSET Traces() override;
 
     /**
      * Function CurrentEnd()
@@ -111,7 +111,7 @@ public:
      * Returns the current end of the line being placed. It may not be equal
      * to the cursor position due to collisions.
      */
-    virtual const VECTOR2I& CurrentEnd() const
+    virtual const VECTOR2I& CurrentEnd() const override
     {
         return m_currentEnd;
     }
@@ -121,7 +121,7 @@ public:
      *
      * Returns the net code of currently routed track.
      */
-    virtual int CurrentNet() const
+    virtual int CurrentNet() const override
     {
         return m_currentNet;
     }
@@ -131,7 +131,7 @@ public:
      *
      * Returns the layer of currently routed track.
      */
-    virtual int CurrentLayer() const
+    virtual int CurrentLayer() const override
     {
         return m_currentLayer;
     }
@@ -141,14 +141,14 @@ public:
      *
      * Returns the most recent world state.
      */
-    virtual PNS_NODE* CurrentNode( bool aLoopsRemoved = false ) const;
+    virtual PNS_NODE* CurrentNode( bool aLoopsRemoved = false ) const override;
 
     /**
      * Function FlipPosture()
      *
      * Toggles the current posture (straight/diagonal) of the trace head.
      */
-    virtual void FlipPosture();
+    virtual void FlipPosture() override;
 
     /**
      * Function UpdateSizes()
@@ -157,13 +157,13 @@ public:
      * a settings class. Used to dynamically change these parameters as
      * the track is routed.
      */
-    virtual void UpdateSizes( const PNS_SIZES_SETTINGS& aSizes );
+    virtual void UpdateSizes( const PNS_SIZES_SETTINGS& aSizes ) override;
 
-    virtual bool IsPlacingVia() const { return m_placingVia; }
+    virtual bool IsPlacingVia() const override { return m_placingVia; }
 
-    virtual void SetOrthoMode( bool aOrthoMode );
+    virtual void SetOrthoMode( bool aOrthoMode ) override;
 
-    virtual void GetModifiedNets( std::vector<int>& aNets ) const;
+    virtual void GetModifiedNets( std::vector<int>& aNets ) const override;
 
 private:
     int viaGap() const;
diff --git a/pcbnew/router/pns_dp_meander_placer.h b/pcbnew/router/pns_dp_meander_placer.h
index fc6771c..104e93f 100644
--- a/pcbnew/router/pns_dp_meander_placer.h
+++ b/pcbnew/router/pns_dp_meander_placer.h
@@ -57,7 +57,7 @@ public:
      * Starts routing a single track at point aP, taking item aStartItem as anchor
      * (unless NULL).
      */
-    virtual bool Start ( const VECTOR2I& aP, PNS_ITEM* aStartItem );
+    virtual bool Start ( const VECTOR2I& aP, PNS_ITEM* aStartItem ) override;
 
     /**
      * Function Move()
@@ -66,7 +66,7 @@ public:
      * aEndItem as anchor (if not NULL).
      * (unless NULL).
      */
-    virtual bool Move( const VECTOR2I& aP, PNS_ITEM* aEndItem );
+    virtual bool Move( const VECTOR2I& aP, PNS_ITEM* aEndItem ) override;
 
     /**
      * Function FixRoute()
@@ -77,7 +77,7 @@ public:
      * result is violating design rules - in such case, the track is only committed
      * if Settings.CanViolateDRC() is on.
      */
-    virtual bool FixRoute( const VECTOR2I& aP, PNS_ITEM* aEndItem );
+    virtual bool FixRoute( const VECTOR2I& aP, PNS_ITEM* aEndItem ) override;
 
     const PNS_LINE Trace() const;
 
@@ -86,21 +86,21 @@ public:
      *
      * Returns the most recent world state.
      */
-    virtual PNS_NODE* CurrentNode( bool aLoopsRemoved = false ) const;
+    virtual PNS_NODE* CurrentNode( bool aLoopsRemoved = false ) const override;
 
-    virtual const PNS_ITEMSET Traces();
+    virtual const PNS_ITEMSET Traces() override;
 
-    virtual const VECTOR2I& CurrentEnd() const;
+    virtual const VECTOR2I& CurrentEnd() const override;
 
-    virtual int CurrentNet() const;
-    virtual int CurrentLayer() const;
+    virtual int CurrentNet() const override;
+    virtual int CurrentLayer() const override;
 
     int totalLength();
 
-    virtual const wxString TuningInfo() const;
-    virtual TUNING_STATUS TuningStatus() const;
+    virtual const wxString TuningInfo() const override;
+    virtual TUNING_STATUS TuningStatus() const override;
 
-    virtual bool CheckFit( PNS_MEANDER_SHAPE* aShape );
+    virtual bool CheckFit( PNS_MEANDER_SHAPE* aShape ) override;
 
 
 private:
diff --git a/pcbnew/router/pns_dragger.h b/pcbnew/router/pns_dragger.h
index ced8208..aed26c5 100644
--- a/pcbnew/router/pns_dragger.h
+++ b/pcbnew/router/pns_dragger.h
@@ -93,7 +93,7 @@ public:
     const PNS_ITEMSET Traces();
 
     /// @copydoc PNS_ALGO_BASE::Logger()
-    virtual PNS_LOGGER* Logger();
+    virtual PNS_LOGGER* Logger() override;
 
 private:
     typedef std::pair<PNS_LINE*, PNS_LINE*> LinePair;
diff --git a/pcbnew/router/pns_joint.h b/pcbnew/router/pns_joint.h
index 9b040e7..c9d33b4 100644
--- a/pcbnew/router/pns_joint.h
+++ b/pcbnew/router/pns_joint.h
@@ -72,7 +72,7 @@ public:
         m_layers = aB.m_layers;
     }
 
-    virtual PNS_ITEM* Clone( ) const
+    virtual PNS_ITEM* Clone( ) const override
     {
         assert( false );
         return NULL;
diff --git a/pcbnew/router/pns_line.h b/pcbnew/router/pns_line.h
index 7329888..9be6bb8 100644
--- a/pcbnew/router/pns_line.h
+++ b/pcbnew/router/pns_line.h
@@ -95,7 +95,7 @@ public:
     }
 
     /// @copydoc PNS_ITEM::Clone()
-    virtual PNS_LINE* Clone() const;
+    virtual PNS_LINE* Clone() const override;
 
     const PNS_LINE& operator=( const PNS_LINE& aOther );
 
@@ -106,7 +106,7 @@ public:
     }
 
     ///> Returns the shape of the line
-    virtual const SHAPE* Shape() const
+    virtual const SHAPE* Shape() const override
     {
         return &m_line;
     }
@@ -254,15 +254,15 @@ public:
 
     const PNS_VIA& Via() const { return m_via; }
 
-    virtual void Mark( int aMarker );
-    virtual void Unmark ();
-    virtual int Marker() const;
+    virtual void Mark( int aMarker ) override;
+    virtual void Unmark () override;
+    virtual int Marker() const override;
 
     void DragSegment( const VECTOR2I& aP, int aIndex, int aSnappingThreshold = 0 );
     void DragCorner( const VECTOR2I& aP, int aIndex, int aSnappingThreshold = 0 );
 
-    virtual void SetRank( int aRank );
-    virtual int Rank() const;
+    virtual void SetRank( int aRank ) override;
+    virtual int Rank() const override;
 
     bool HasLoops() const;
 
diff --git a/pcbnew/router/pns_line_placer.h b/pcbnew/router/pns_line_placer.h
index 1c1355a..dedbe3b 100644
--- a/pcbnew/router/pns_line_placer.h
+++ b/pcbnew/router/pns_line_placer.h
@@ -59,7 +59,7 @@ public:
      * Starts routing a single track at point aP, taking item aStartItem as anchor
      * (unless NULL).
      */
-    virtual bool Start( const VECTOR2I& aP, PNS_ITEM* aStartItem );
+    virtual bool Start( const VECTOR2I& aP, PNS_ITEM* aStartItem ) override;
 
     /**
      * Function Move()
@@ -68,7 +68,7 @@ public:
      * aEndItem as anchor (if not NULL).
      * (unless NULL).
      */
-    virtual bool Move( const VECTOR2I& aP, PNS_ITEM* aEndItem );
+    virtual bool Move( const VECTOR2I& aP, PNS_ITEM* aEndItem ) override;
 
     /**
      * Function FixRoute()
@@ -79,21 +79,21 @@ public:
      * result is violating design rules - in such case, the track is only committed
      * if Settings.CanViolateDRC() is on.
      */
-    virtual bool FixRoute( const VECTOR2I& aP, PNS_ITEM* aEndItem );
+    virtual bool FixRoute( const VECTOR2I& aP, PNS_ITEM* aEndItem ) override;
 
     /**
      * Function ToggleVia()
      *
      * Enables/disables a via at the end of currently routed trace.
      */
-    virtual bool ToggleVia( bool aEnabled );
+    virtual bool ToggleVia( bool aEnabled ) override;
 
     /**
      * Function SetLayer()
      *
      * Sets the current routing layer.
      */
-    virtual bool SetLayer( int aLayer );
+    virtual bool SetLayer( int aLayer ) override;
 
     /**
      * Function Head()
@@ -123,7 +123,7 @@ public:
      *
      * Returns the complete routed line, as a single-member PNS_ITEMSET.
      */
-    virtual const PNS_ITEMSET Traces();
+    virtual const PNS_ITEMSET Traces() override;
 
     /**
      * Function CurrentEnd()
@@ -131,7 +131,7 @@ public:
      * Returns the current end of the line being placed. It may not be equal
      * to the cursor position due to collisions.
      */
-    virtual const VECTOR2I& CurrentEnd() const
+    virtual const VECTOR2I& CurrentEnd() const override
     {
         return m_currentEnd;
     }
@@ -141,7 +141,7 @@ public:
      *
      * Returns the net code of currently routed track.
      */
-    virtual int CurrentNet() const
+    virtual int CurrentNet() const override
     {
         return m_currentNet;
     }
@@ -151,7 +151,7 @@ public:
      *
      * Returns the layer of currently routed track.
      */
-    virtual int CurrentLayer() const
+    virtual int CurrentLayer() const override
     {
         return m_currentLayer;
     }
@@ -161,14 +161,14 @@ public:
      *
      * Returns the most recent world state.
      */
-    virtual PNS_NODE* CurrentNode( bool aLoopsRemoved = false ) const;
+    virtual PNS_NODE* CurrentNode( bool aLoopsRemoved = false ) const override;
 
     /**
      * Function FlipPosture()
      *
      * Toggles the current posture (straight/diagonal) of the trace head.
      */
-    virtual void FlipPosture();
+    virtual void FlipPosture() override;
 
     /**
      * Function UpdateSizes()
@@ -177,13 +177,13 @@ public:
      * a settings class. Used to dynamically change these parameters as
      * the track is routed.
      */
-    virtual void UpdateSizes( const PNS_SIZES_SETTINGS& aSizes );
+    virtual void UpdateSizes( const PNS_SIZES_SETTINGS& aSizes ) override;
 
-    virtual void SetOrthoMode( bool aOrthoMode );
+    virtual void SetOrthoMode( bool aOrthoMode ) override;
 
-    virtual bool IsPlacingVia() const { return m_placingVia; }
+    virtual bool IsPlacingVia() const override { return m_placingVia; }
 
-    virtual void GetModifiedNets( std::vector<int>& aNets ) const;
+    virtual void GetModifiedNets( std::vector<int>& aNets ) const override;
 private:
     /**
      * Function route()
diff --git a/pcbnew/router/pns_meander_placer.h b/pcbnew/router/pns_meander_placer.h
index af94d34..452d35c 100644
--- a/pcbnew/router/pns_meander_placer.h
+++ b/pcbnew/router/pns_meander_placer.h
@@ -51,37 +51,37 @@ public:
     virtual ~PNS_MEANDER_PLACER();
 
     /// @copydoc PNS_PLACEMENT_ALGO::Start()
-    virtual bool Start( const VECTOR2I& aP, PNS_ITEM* aStartItem );
+    virtual bool Start( const VECTOR2I& aP, PNS_ITEM* aStartItem ) override;
 
     /// @copydoc PNS_PLACEMENT_ALGO::Move()
-    virtual bool Move( const VECTOR2I& aP, PNS_ITEM* aEndItem );
+    virtual bool Move( const VECTOR2I& aP, PNS_ITEM* aEndItem ) override;
 
     /// @copydoc PNS_PLACEMENT_ALGO::FixRoute()
-    virtual bool FixRoute( const VECTOR2I& aP, PNS_ITEM* aEndItem );
+    virtual bool FixRoute( const VECTOR2I& aP, PNS_ITEM* aEndItem ) override;
 
     /// @copydoc PNS_PLACEMENT_ALGO::CurrentNode()
-    virtual PNS_NODE* CurrentNode( bool aLoopsRemoved = false ) const;
+    virtual PNS_NODE* CurrentNode( bool aLoopsRemoved = false ) const override;
 
     /// @copydoc PNS_PLACEMENT_ALGO::Traces()
-    virtual const PNS_ITEMSET Traces();
+    virtual const PNS_ITEMSET Traces() override;
 
     /// @copydoc PNS_PLACEMENT_ALGO::CurrentEnd()
-    virtual const VECTOR2I& CurrentEnd() const;;
+    virtual const VECTOR2I& CurrentEnd() const override;;
 
     /// @copydoc PNS_PLACEMENT_ALGO::CurrentNet()
-    virtual int CurrentNet() const;
+    virtual int CurrentNet() const override;
 
     /// @copydoc PNS_PLACEMENT_ALGO::CurrentLayer()
-    virtual int CurrentLayer() const;
+    virtual int CurrentLayer() const override;
 
     /// @copydoc PNS_MEANDER_PLACER_BASE::TuningInfo()
-    virtual const wxString TuningInfo() const;
+    virtual const wxString TuningInfo() const override;
 
     /// @copydoc PNS_MEANDER_PLACER_BASE::TuningStatus()
-    virtual TUNING_STATUS TuningStatus() const;
+    virtual TUNING_STATUS TuningStatus() const override;
 
     /// @copydoc PNS_MEANDER_PLACER_BASE::CheckFit()
-    virtual bool CheckFit ( PNS_MEANDER_SHAPE* aShape );
+    virtual bool CheckFit ( PNS_MEANDER_SHAPE* aShape ) override;
 
 protected:
 
diff --git a/pcbnew/router/pns_meander_skew_placer.h b/pcbnew/router/pns_meander_skew_placer.h
index 96d9580..533f78c 100644
--- a/pcbnew/router/pns_meander_skew_placer.h
+++ b/pcbnew/router/pns_meander_skew_placer.h
@@ -41,20 +41,20 @@ public:
     ~PNS_MEANDER_SKEW_PLACER();
 
     /// @copydoc PNS_PLACEMENT_ALGO::Start()
-    virtual bool Start( const VECTOR2I& aP, PNS_ITEM* aStartItem );
+    virtual bool Start( const VECTOR2I& aP, PNS_ITEM* aStartItem ) override;
 
     /// @copydoc PNS_PLACEMENT_ALGO::Move()
-    virtual bool Move( const VECTOR2I& aP, PNS_ITEM* aEndItem );
+    virtual bool Move( const VECTOR2I& aP, PNS_ITEM* aEndItem ) override;
 
     /// @copydoc PNS_MEANDER_PLACER_BASE::TuningInfo()
-    virtual const wxString TuningInfo() const;
+    virtual const wxString TuningInfo() const override;
 
 private:
 
     int currentSkew( ) const;
     int itemsetLength( const PNS_ITEMSET& aSet ) const;
 
-    virtual int origPathLength () const;
+    virtual int origPathLength () const override;
 
     PNS_DIFF_PAIR m_originPair;
     PNS_ITEMSET m_tunedPath, m_tunedPathP, m_tunedPathN;
diff --git a/pcbnew/router/pns_node.h b/pcbnew/router/pns_node.h
index 915d0b0..1681919 100644
--- a/pcbnew/router/pns_node.h
+++ b/pcbnew/router/pns_node.h
@@ -63,8 +63,8 @@ public:
     PNS_PCBNEW_CLEARANCE_FUNC( PNS_ROUTER *aRouter );
     virtual ~PNS_PCBNEW_CLEARANCE_FUNC();
 
-    virtual int operator()( const PNS_ITEM* aA, const PNS_ITEM* aB );
-    virtual void OverrideClearance (bool aEnable, int aNetA = 0, int aNetB = 0, int aClearance = 0);
+    virtual int operator()( const PNS_ITEM* aA, const PNS_ITEM* aB ) override;
+    virtual void OverrideClearance (bool aEnable, int aNetA = 0, int aNetB = 0, int aClearance = 0) override;
 
 private:
     struct CLEARANCE_ENT {
diff --git a/pcbnew/router/pns_segment.h b/pcbnew/router/pns_segment.h
index 16cbf16..8b9e156 100644
--- a/pcbnew/router/pns_segment.h
+++ b/pcbnew/router/pns_segment.h
@@ -60,9 +60,9 @@ public:
         return aItem && SEGMENT == aItem->Kind();
     }
 
-    virtual PNS_SEGMENT* Clone( ) const;
+    virtual PNS_SEGMENT* Clone( ) const override;
 
-    virtual const SHAPE* Shape() const
+    virtual const SHAPE* Shape() const override
     {
         return static_cast<const SHAPE*>( &m_seg );
     }
@@ -72,7 +72,7 @@ public:
         SetLayers( PNS_LAYERSET( aLayer ) );
     }
 
-    virtual int Layer() const
+    virtual int Layer() const override
     {
         return Layers().Start();
     }
@@ -108,9 +108,9 @@ public:
         m_seg.SetSeg( SEG (tmp.B , tmp.A ) );
     }
 
-    virtual const SHAPE_LINE_CHAIN Hull( int aClearance, int aWalkaroundThickness ) const;
+    virtual const SHAPE_LINE_CHAIN Hull( int aClearance, int aWalkaroundThickness ) const override;
 
-    virtual VECTOR2I Anchor(int n) const
+    virtual VECTOR2I Anchor(int n) const override
     {
         if( n == 0 )
             return m_seg.GetSeg().A;
@@ -118,7 +118,7 @@ public:
             return m_seg.GetSeg().B;
     }
 
-    virtual int AnchorCount() const
+    virtual int AnchorCount() const override
     {
         return 2;
     }
diff --git a/pcbnew/router/pns_shove.h b/pcbnew/router/pns_shove.h
index cf8ae3f..e647b18 100644
--- a/pcbnew/router/pns_shove.h
+++ b/pcbnew/router/pns_shove.h
@@ -55,7 +55,7 @@ public:
     PNS_SHOVE( PNS_NODE* aWorld, PNS_ROUTER* aRouter );
     ~PNS_SHOVE();
 
-    virtual PNS_LOGGER* Logger()
+    virtual PNS_LOGGER* Logger() override
     {
         return &m_logger;
     }
diff --git a/pcbnew/router/pns_solid.h b/pcbnew/router/pns_solid.h
index 3feb674..1c08b9e 100644
--- a/pcbnew/router/pns_solid.h
+++ b/pcbnew/router/pns_solid.h
@@ -54,11 +54,11 @@ public:
         return aItem && SOLID == aItem->Kind();
     }
 
-    virtual PNS_ITEM* Clone() const;
+    virtual PNS_ITEM* Clone() const override;
 
-    virtual const SHAPE* Shape() const { return m_shape; }
+    virtual const SHAPE* Shape() const override { return m_shape; }
 
-    virtual const SHAPE_LINE_CHAIN Hull( int aClearance = 0, int aWalkaroundThickness = 0 ) const;
+    virtual const SHAPE_LINE_CHAIN Hull( int aClearance = 0, int aWalkaroundThickness = 0 ) const override;
 
     void SetShape( SHAPE* shape )
     {
@@ -78,12 +78,12 @@ public:
         m_pos = aCenter;
     }
 
-    virtual VECTOR2I Anchor( int aN ) const
+    virtual VECTOR2I Anchor( int aN ) const override
     {
         return m_pos;
     }
 
-    virtual int AnchorCount() const
+    virtual int AnchorCount() const override
     {
         return 1;
     }
diff --git a/pcbnew/router/pns_tool_base.h b/pcbnew/router/pns_tool_base.h
index db89985..3670404 100644
--- a/pcbnew/router/pns_tool_base.h
+++ b/pcbnew/router/pns_tool_base.h
@@ -41,7 +41,7 @@ public:
     PNS_TOOL_BASE( const std::string& aToolName );
     virtual ~PNS_TOOL_BASE();
 
-    virtual void Reset( RESET_REASON aReason );
+    virtual void Reset( RESET_REASON aReason ) override;
 
 protected:
 
diff --git a/pcbnew/router/pns_via.h b/pcbnew/router/pns_via.h
index 8d4f84b..6cd9387 100644
--- a/pcbnew/router/pns_via.h
+++ b/pcbnew/router/pns_via.h
@@ -127,21 +127,21 @@ public:
             bool aSolidsOnly = true,
             int aMaxIterations = 10 );
 
-    virtual const SHAPE* Shape() const
+    virtual const SHAPE* Shape() const override
     {
         return &m_shape;
     }
 
-    virtual PNS_VIA* Clone() const;
+    virtual PNS_VIA* Clone() const override;
 
-    virtual const SHAPE_LINE_CHAIN Hull( int aClearance = 0, int aWalkaroundThickness = 0 ) const;
+    virtual const SHAPE_LINE_CHAIN Hull( int aClearance = 0, int aWalkaroundThickness = 0 ) const override;
 
-    virtual VECTOR2I Anchor( int n ) const
+    virtual VECTOR2I Anchor( int n ) const override
     {
         return m_pos;
     }
 
-    virtual int AnchorCount() const
+    virtual int AnchorCount() const override
     {
         return 1;
     }
diff --git a/pcbnew/router/pns_walkaround.h b/pcbnew/router/pns_walkaround.h
index 939ba42..38dd416 100644
--- a/pcbnew/router/pns_walkaround.h
+++ b/pcbnew/router/pns_walkaround.h
@@ -102,7 +102,7 @@ public:
     WALKAROUND_STATUS Route( const PNS_LINE& aInitialPath, PNS_LINE& aWalkPath,
             bool aOptimize = true );
 
-    virtual PNS_LOGGER* Logger()
+    virtual PNS_LOGGER* Logger() override
     {
         return &m_logger;
     }
diff --git a/pcbnew/router/router_preview_item.h b/pcbnew/router/router_preview_item.h
index 691282b..d4f2183 100644
--- a/pcbnew/router/router_preview_item.h
+++ b/pcbnew/router/router_preview_item.h
@@ -73,22 +73,22 @@ public:
     }
 
 #if defined(DEBUG)
-    virtual void Show( int aA, std::ostream& aB ) const {}
+    virtual void Show( int aA, std::ostream& aB ) const override {}
 #endif
 
     /** Get class name
      * @return  string "ROUTER_PREVIEW_ITEM"
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return "ROUTER_PREVIEW_ITEM";
     }
 
-    virtual const BOX2I ViewBBox() const;
+    virtual const BOX2I ViewBBox() const override;
 
-    virtual void ViewDraw( int aLayer, KIGFX::GAL* aGal ) const;
+    virtual void ViewDraw( int aLayer, KIGFX::GAL* aGal ) const override;
 
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override
     {
         aLayers[0] = m_layer;
         aCount = 1;
diff --git a/pcbnew/router/router_tool.cpp b/pcbnew/router/router_tool.cpp
index f8ee763..d05ce6c 100644
--- a/pcbnew/router/router_tool.cpp
+++ b/pcbnew/router/router_tool.cpp
@@ -154,7 +154,7 @@ public:
     }
 
 protected:
-    virtual OPT_TOOL_EVENT handleCustomEvent( const wxMenuEvent& aEvent )
+    virtual OPT_TOOL_EVENT handleCustomEvent( const wxMenuEvent& aEvent ) override
     {
 #if ID_POPUP_PCB_SELECT_VIASIZE1 < ID_POPUP_PCB_SELECT_WIDTH1
 #error You have changed event ids order, it breaks code. Check the source code for more details.
diff --git a/pcbnew/router/router_tool.h b/pcbnew/router/router_tool.h
index b88a0d8..53c7683 100644
--- a/pcbnew/router/router_tool.h
+++ b/pcbnew/router/router_tool.h
@@ -30,7 +30,7 @@ public:
     ROUTER_TOOL();
     ~ROUTER_TOOL();
 
-    virtual void Reset( RESET_REASON aReason );
+    virtual void Reset( RESET_REASON aReason ) override;
 
     int RouteSingleTrace ( const TOOL_EVENT& aEvent );
     int RouteDiffPair ( const TOOL_EVENT& aEvent );
diff --git a/pcbnew/sel_layer.cpp b/pcbnew/sel_layer.cpp
index 8188a07..f4d0a55 100644
--- a/pcbnew/sel_layer.cpp
+++ b/pcbnew/sel_layer.cpp
@@ -52,20 +52,20 @@ protected:
     BOARD*  m_brd;
 
     // Returns true if the layer id is enabled (i.e. is it should be displayed)
-    virtual bool IsLayerEnabled( LAYER_NUM aLayer ) const
+    virtual bool IsLayerEnabled( LAYER_NUM aLayer ) const override
     {
         return m_brd->IsLayerEnabled( LAYER_ID( aLayer ) );
     }
 
     // Returns a color index from the layer id
     // Virtual function
-    virtual EDA_COLOR_T GetLayerColor( LAYER_NUM aLayer ) const
+    virtual EDA_COLOR_T GetLayerColor( LAYER_NUM aLayer ) const override
     {
         return m_brd->GetLayerColor( ToLAYER_ID( aLayer ) );
     }
 
     // Returns the name of the layer id
-    virtual wxString GetLayerName( LAYER_NUM aLayer ) const
+    virtual wxString GetLayerName( LAYER_NUM aLayer ) const override
     {
         return m_brd->GetLayerName( ToLAYER_ID( aLayer ) );
     }
@@ -94,8 +94,8 @@ public:
 
 private:
     // Event handlers
-    virtual void OnLeftGridCellClick( wxGridEvent& event );
-    virtual void OnRightGridCellClick( wxGridEvent& event );
+    virtual void OnLeftGridCellClick( wxGridEvent& event ) override;
+    virtual void OnRightGridCellClick( wxGridEvent& event ) override;
 
     void buildList();
 };
@@ -264,15 +264,15 @@ public:
     }
 
 private:
-    virtual void OnLeftGridCellClick( wxGridEvent& event );
-    virtual void OnRightGridCellClick( wxGridEvent& event );
+    virtual void OnLeftGridCellClick( wxGridEvent& event ) override;
+    virtual void OnRightGridCellClick( wxGridEvent& event ) override;
 
     void OnOkClick( wxCommandEvent& event )
     {
         EndModal( wxID_OK );
     }
 
-    virtual void OnCancelClick( wxCommandEvent& event )
+    virtual void OnCancelClick( wxCommandEvent& event ) override
     {
         EndModal( wxID_CANCEL );
     }
diff --git a/pcbnew/specctra.h b/pcbnew/specctra.h
index 21f6e7d..da5cbd7 100644
--- a/pcbnew/specctra.h
+++ b/pcbnew/specctra.h
@@ -291,7 +291,7 @@ public:
     {
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR );
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override;
 
 
     //-----< list operations >--------------------------------------------
@@ -387,7 +387,7 @@ public:
 
     PARSER( ELEM* aParent );
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR );
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override;
 };
 
 
@@ -421,7 +421,7 @@ public:
     DSN_T   GetEngUnits() const  { return units; }
     int     GetValue() const  { return value; }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         if( type == T_unit )
             out->Print( nestLevel, "(%s %s)\n", Name(),
@@ -467,7 +467,7 @@ public:
     POINT GetOrigin() { return point0; }
     POINT GetEnd() { return point1; }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* newline = nestLevel ? "\n" : "";
 
@@ -500,7 +500,7 @@ public:
     {
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s", Name() );
 
@@ -546,7 +546,7 @@ public:
         delete rule;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s", Name() );
 
@@ -607,7 +607,7 @@ public:
         aperture_width = aWidth;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* newline = nestLevel ? "\n" : "";
 
@@ -700,7 +700,7 @@ public:
     }
 
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s\n", Name() );
 
@@ -733,7 +733,7 @@ public:
         diameter = 0.0;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* newline = nestLevel ? "\n" : "";
 
@@ -780,7 +780,7 @@ public:
         aperture_width = 0.0;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* newline = nestLevel ? "\n" : "";
 
@@ -862,7 +862,7 @@ public:
         }
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s ", Name() );
 
@@ -945,7 +945,7 @@ public:
         windows.push_back( aWindow );
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* newline = "\n";
 
@@ -1022,7 +1022,7 @@ public:
         padstacks.push_back( aViaName );
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const int RIGHTMARGIN = 80;
         int perLine = out->Print( nestLevel, "(%s", Name() );
@@ -1076,7 +1076,7 @@ public:
     {
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         for( STRINGS::iterator i=class_ids.begin();  i!=class_ids.end();  ++i )
         {
@@ -1115,7 +1115,7 @@ public:
         delete classes;
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         if( classes )
             classes->Format( out, nestLevel );
@@ -1145,7 +1145,7 @@ public:
     {
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s\n", Name() );
 
@@ -1200,7 +1200,7 @@ public:
         delete rules;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( name.c_str() );
 
@@ -1274,7 +1274,7 @@ public:
         layer_weight = 0.0;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote0 = out->GetQuoteChar( layer_id0.c_str() );
         const char* quote1 = out->GetQuoteChar( layer_id1.c_str() );
@@ -1301,7 +1301,7 @@ public:
     {
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s\n", Name() );
 
@@ -1347,7 +1347,7 @@ public:
     {
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s %s)\n", Name(),
                    GetTokenText( value ) );
@@ -1373,7 +1373,7 @@ public:
     {
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( value.c_str() );
 
@@ -1416,7 +1416,7 @@ public:
         delete rules;
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         if( region_id.size() )
         {
@@ -1460,7 +1460,7 @@ public:
         image_type= T_NONE;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s %s %.6g",
                    Name(),
@@ -1504,7 +1504,7 @@ public:
         delete rules;
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         for( LAYERS::iterator i=layers.begin();  i!=layers.end();  ++i )
             i->Format( out, nestLevel );
@@ -1588,7 +1588,7 @@ public:
             place_boundary->SetParent( this );
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         if( unit )
             unit->Format( out, nestLevel );
@@ -1635,7 +1635,7 @@ public:
             i->Format( out, nestLevel );
     }
 
-    virtual UNIT_RES* GetUnits() const
+    virtual UNIT_RES* GetUnits() const override
     {
         if( unit )
             return unit;
@@ -1720,7 +1720,7 @@ public:
         rotation = aRotation;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR );
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override;
 };
 typedef boost::ptr_vector<PLACE>    PLACES;
 
@@ -1757,7 +1757,7 @@ public:
      */
 //    static int Compare( IMAGE* lhs, IMAGE* rhs );
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( image_id.c_str() );
         out->Print( nestLevel, "(%s %s%s%s\n", Name(),
@@ -1768,7 +1768,7 @@ public:
         out->Print( nestLevel, ")\n" );
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         for( PLACES::iterator i=places.begin();  i!=places.end();  ++i )
             i->Format( out, nestLevel );
@@ -1821,7 +1821,7 @@ public:
         return added;
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         if( unit )
             unit->Format( out, nestLevel );
@@ -1836,7 +1836,7 @@ public:
             i->Format( out, nestLevel );
     }
 
-    virtual UNIT_RES* GetUnits() const
+    virtual UNIT_RES* GetUnits() const override
     {
         if( unit )
             return unit;
@@ -1887,7 +1887,7 @@ public:
         connect = aConnect;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s ", Name() );
 
@@ -1946,7 +1946,7 @@ public:
         vertex.FixNegativeZero();
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( padstack_id.c_str() );
         if( isRotated )
@@ -2031,7 +2031,7 @@ public:
         return image_id;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         std::string imageId = GetImageId();
 
@@ -2046,7 +2046,7 @@ public:
     }
 
     // this is here for makeHash()
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         if( side != T_both )
             out->Print( 0, " (side %s)", GetTokenText( side ) );
@@ -2073,7 +2073,7 @@ public:
     }
 
 
-    virtual UNIT_RES* GetUnits() const
+    virtual UNIT_RES* GetUnits() const override
     {
         if( unit )
             return unit;
@@ -2146,7 +2146,7 @@ public:
         padstack_id = aPadstackId;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( padstack_id.c_str() );
 
@@ -2160,7 +2160,7 @@ public:
 
 
     // this factored out for use by Compare()
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         if( unit )
             unit->Format( out, nestLevel );
@@ -2194,7 +2194,7 @@ public:
     }
 
 
-    virtual UNIT_RES* GetUnits() const
+    virtual UNIT_RES* GetUnits() const override
     {
         if( unit )
             return unit;
@@ -2389,7 +2389,7 @@ public:
         return NULL;
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         if( unit )
             unit->Format( out, nestLevel );
@@ -2404,7 +2404,7 @@ public:
             i->Format( out, nestLevel );
     }
 
-    virtual UNIT_RES* GetUnits() const
+    virtual UNIT_RES* GetUnits() const override
     {
         if( unit )
             return unit;
@@ -2478,7 +2478,7 @@ public:
         delete rules;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         // no quoting on these two, the lexer preserved the quotes on input
         out->Print( nestLevel, "(%s %s %s ",
@@ -2536,7 +2536,7 @@ public:
     {
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s", Name() );
 
@@ -2619,7 +2619,7 @@ public:
         return -1;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( net_id.c_str() );
         const char* space = " ";
@@ -2696,7 +2696,7 @@ public:
     {
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         for( FROMTOS::iterator i=fromtos.begin();  i!=fromtos.end();  ++i )
             i->Format( out, nestLevel );
@@ -2743,7 +2743,7 @@ public:
     }
 
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( class_id.c_str() );
 
@@ -2812,7 +2812,7 @@ public:
     {
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         for( NETS::iterator i=nets.begin();  i!=nets.end();  ++i )
             i->Format( out, nestLevel );
@@ -2893,7 +2893,7 @@ public:
         }
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         out->Print( nestLevel, "(%s ", Name() );
 
@@ -2977,7 +2977,7 @@ public:
         return padstack_id;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( padstack_id.c_str() );
 
@@ -3103,7 +3103,7 @@ public:
         delete unit;
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         if( unit )
             unit->Format( out, nestLevel );
@@ -3115,7 +3115,7 @@ public:
             i->Format( out, nestLevel );
     }
 
-    virtual UNIT_RES*  GetUnits() const
+    virtual UNIT_RES*  GetUnits() const override
     {
         if( unit )
             return unit;
@@ -3166,7 +3166,7 @@ public:
         delete wiring;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( pcbname.c_str() );
 
@@ -3200,7 +3200,7 @@ public:
         out->Print( nestLevel, ")\n" );
     }
 
-    virtual UNIT_RES*  GetUnits() const
+    virtual UNIT_RES*  GetUnits() const override
     {
         if( unit )
             return unit;
@@ -3229,7 +3229,7 @@ public:
         time_stamp = time(NULL);
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         char    temp[80];
         struct  tm* tmp;
@@ -3273,7 +3273,7 @@ public:
         time_stamp = time(NULL);
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         for( ANCESTORS::iterator i=ancestors.begin();  i!=ancestors.end();  ++i )
             i->Format( out, nestLevel );
@@ -3316,7 +3316,7 @@ public:
     {
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         bool singleLine = pin_refs.size() <= 1;
         out->Print( nestLevel, "(%s", Name() );
@@ -3375,7 +3375,7 @@ public:
         delete rules;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( net_id.c_str() );
 
@@ -3434,7 +3434,7 @@ public:
 //        delete test_points;
     }
 
-    virtual UNIT_RES*  GetUnits() const
+    virtual UNIT_RES*  GetUnits() const override
     {
         if( resolution )
             return resolution;
@@ -3442,7 +3442,7 @@ public:
         return ELEM::GetUnits();
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         if( resolution )
             resolution->Format( out, nestLevel );
@@ -3505,7 +3505,7 @@ public:
     {
     }
 
-    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void FormatContents( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         for( PIN_PAIRS::iterator i=pin_pairs.begin();  i!=pin_pairs.end();  ++i )
         {
@@ -3562,7 +3562,7 @@ public:
         delete route;
     }
 
-    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR )
+    virtual void Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IO_ERROR ) override
     {
         const char* quote = out->GetQuoteChar( session_id.c_str() );
         out->Print( nestLevel, "(%s %s%s%s\n", Name(),
diff --git a/pcbnew/target_edit.cpp b/pcbnew/target_edit.cpp
index 10985e1..ed2173f 100644
--- a/pcbnew/target_edit.cpp
+++ b/pcbnew/target_edit.cpp
@@ -74,8 +74,8 @@ public:
     ~TARGET_PROPERTIES_DIALOG_EDITOR() { }
 
 private:
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnCancelClick( wxCommandEvent& event );
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnCancelClick( wxCommandEvent& event ) override;
 };
 
 
diff --git a/pcbnew/tools/bright_box.h b/pcbnew/tools/bright_box.h
index 4434baa..9ec9148 100644
--- a/pcbnew/tools/bright_box.h
+++ b/pcbnew/tools/bright_box.h
@@ -42,27 +42,27 @@ public:
     BRIGHT_BOX( BOARD_ITEM* aItem );
     ~BRIGHT_BOX() {};
 
-    virtual const BOX2I ViewBBox() const
+    virtual const BOX2I ViewBBox() const override
     {
         return m_item->ViewBBox();
     }
 
-    virtual void ViewDraw( int aLayer, KIGFX::GAL* aGal ) const;
+    virtual void ViewDraw( int aLayer, KIGFX::GAL* aGal ) const override;
 
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override
     {
         aLayers[0] = ITEM_GAL_LAYER( GP_OVERLAY );
         aCount = 1;
     }
 
 #if defined(DEBUG)
-    virtual void Show( int x, std::ostream& st ) const {}
+    virtual void Show( int x, std::ostream& st ) const override {}
 #endif
 
     /** Get class name
      * @return  string "BRIGHT_BOX"
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return "BRIGHT_BOX";
     }
diff --git a/pcbnew/tools/drawing_tool.h b/pcbnew/tools/drawing_tool.h
index 6733f0c..0152ba5 100644
--- a/pcbnew/tools/drawing_tool.h
+++ b/pcbnew/tools/drawing_tool.h
@@ -50,7 +50,7 @@ public:
     ~DRAWING_TOOL();
 
     /// @copydoc TOOL_INTERACTIVE::Reset()
-    virtual void Reset( RESET_REASON aReason );
+    virtual void Reset( RESET_REASON aReason ) override;
 
     /**
      * Function DrawLine()
diff --git a/pcbnew/tools/edit_constraints.h b/pcbnew/tools/edit_constraints.h
index a1744d3..a244b15 100644
--- a/pcbnew/tools/edit_constraints.h
+++ b/pcbnew/tools/edit_constraints.h
@@ -92,7 +92,7 @@ public:
     {}
 
     ///> @copydoc EDIT_CONSTRAINT::Apply()
-    virtual void Apply( EDIT_POINT& aHandle );
+    virtual void Apply( EDIT_POINT& aHandle ) override;
 
 private:
     const EDIT_POINT& m_constrainer;      ///< Point that imposes the constraint.
@@ -118,7 +118,7 @@ public:
     {}
 
     ///> @copydoc EDIT_CONSTRAINT::Apply()
-    virtual void Apply( EDIT_POINT& aHandle );
+    virtual void Apply( EDIT_POINT& aHandle ) override;
 
 private:
     const EDIT_POINT& m_constrainer;    ///< Point that imposes the constraint.
@@ -145,7 +145,7 @@ public:
     {}
 
     ///> @copydoc EDIT_CONSTRAINT::Apply()
-    virtual void Apply( EDIT_POINT& aHandle );
+    virtual void Apply( EDIT_POINT& aHandle ) override;
 
 private:
     const EDIT_POINT& m_constrainer;    ///< Point that imposes the constraint.
@@ -164,7 +164,7 @@ public:
     EC_LINE( EDIT_POINT& aConstrained, const EDIT_POINT& aConstrainer );
 
     ///> @copydoc EDIT_CONSTRAINT::Apply()
-    virtual void Apply( EDIT_POINT& aHandle );
+    virtual void Apply( EDIT_POINT& aHandle ) override;
 
 private:
     const EDIT_POINT& m_constrainer;    ///< Point that imposes the constraint.
@@ -192,7 +192,7 @@ public:
     {}
 
     ///> @copydoc EDIT_CONSTRAINT::Apply()
-    virtual void Apply( EDIT_POINT& aHandle );
+    virtual void Apply( EDIT_POINT& aHandle ) override;
 
 private:
     ///> Point that imposes the constraint (center of the circle).
@@ -217,7 +217,7 @@ public:
     virtual ~EC_CONVERGING();
 
     ///> @copydoc EDIT_CONSTRAINT::Apply()
-    virtual void Apply( EDIT_LINE& aHandle );
+    virtual void Apply( EDIT_LINE& aHandle ) override;
 
 private:
     ///> Constraint for origin side segment.
@@ -257,7 +257,7 @@ public:
     {}
 
     ///> @copydoc EDIT_CONSTRAINT::Apply()
-    virtual void Apply( EDIT_LINE& aHandle );
+    virtual void Apply( EDIT_LINE& aHandle ) override;
 
 private:
     ///> Function that determines snapping point.
diff --git a/pcbnew/tools/edit_points.h b/pcbnew/tools/edit_points.h
index e78680a..d70357c 100644
--- a/pcbnew/tools/edit_points.h
+++ b/pcbnew/tools/edit_points.h
@@ -197,13 +197,13 @@ public:
     }
 
     ///> @copydoc EDIT_POINT::GetPosition()
-    virtual VECTOR2I GetPosition() const
+    virtual VECTOR2I GetPosition() const override
     {
         return ( m_origin.GetPosition() + m_end.GetPosition() ) / 2;
     }
 
     ///> @copydoc EDIT_POINT::GetPosition()
-    virtual void SetPosition( const VECTOR2I& aPosition )
+    virtual void SetPosition( const VECTOR2I& aPosition ) override
     {
         VECTOR2I difference = aPosition - GetPosition();
 
@@ -212,7 +212,7 @@ public:
     }
 
     ///> @copydoc EDIT_POINT::ApplyConstraint()
-    virtual void ApplyConstraint()
+    virtual void ApplyConstraint() override
     {
         m_origin.ApplyConstraint();
         m_end.ApplyConstraint();
@@ -488,31 +488,29 @@ public:
     }
 
     ///> @copydoc VIEW_ITEM::ViewBBox()
-    virtual const BOX2I ViewBBox() const
+    virtual const BOX2I ViewBBox() const override
     {
         return m_parent->ViewBBox();
     }
 
     ///> @copydoc VIEW_ITEM::ViewDraw()
-    virtual void ViewDraw( int aLayer, KIGFX::GAL* aGal ) const;
+    virtual void ViewDraw( int aLayer, KIGFX::GAL* aGal ) const override;
 
     ///> @copydoc VIEW_ITEM::ViewGetLayers()
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override
     {
         aCount = 1;
         aLayers[0] = ITEM_GAL_LAYER( GP_OVERLAY );
     }
 
 #if defined(DEBUG)
-    virtual void Show( int x, std::ostream& st ) const
-    {
-    }
+    virtual void Show( int x, std::ostream& st ) const override {}
 #endif
 
     /** Get class name
      * @return  string "EDIT_POINTS"
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return "EDIT_POINTS";
     }
diff --git a/pcbnew/tools/edit_tool.h b/pcbnew/tools/edit_tool.h
index b9463de..0852bb6 100644
--- a/pcbnew/tools/edit_tool.h
+++ b/pcbnew/tools/edit_tool.h
@@ -51,10 +51,10 @@ public:
     EDIT_TOOL();
 
     /// @copydoc TOOL_INTERACTIVE::Reset()
-    virtual void Reset( RESET_REASON aReason );
+    virtual void Reset( RESET_REASON aReason ) override;
 
     /// @copydoc TOOL_INTERACTIVE::Init()
-    virtual bool Init();
+    virtual bool Init() override;
 
     /**
      * Function Main()
diff --git a/pcbnew/tools/module_tools.h b/pcbnew/tools/module_tools.h
index 3bc569f..6501309 100644
--- a/pcbnew/tools/module_tools.h
+++ b/pcbnew/tools/module_tools.h
@@ -46,10 +46,10 @@ public:
     MODULE_TOOLS();
 
     /// @copydoc TOOL_INTERACTIVE::Reset()
-    virtual void Reset( RESET_REASON aReason );
+    virtual void Reset( RESET_REASON aReason ) override;
 
     /// @copydoc TOOL_INTERACTIVE::Init()
-    virtual bool Init();
+    virtual bool Init() override;
 
     /**
      * Function PlacePad()
diff --git a/pcbnew/tools/pcb_editor_control.h b/pcbnew/tools/pcb_editor_control.h
index b7075ea..8898fe4 100644
--- a/pcbnew/tools/pcb_editor_control.h
+++ b/pcbnew/tools/pcb_editor_control.h
@@ -40,10 +40,10 @@ public:
     PCB_EDITOR_CONTROL();
 
     /// @copydoc TOOL_INTERACTIVE::Reset()
-    virtual void Reset( RESET_REASON aReason );
+    virtual void Reset( RESET_REASON aReason ) override;
 
     /// @copydoc TOOL_INTERACTIVE::Init()
-    virtual bool Init();
+    virtual bool Init() override;
 
     // Track & via size control
     int TrackWidthInc( const TOOL_EVENT& aEvent );
diff --git a/pcbnew/tools/pcbnew_control.h b/pcbnew/tools/pcbnew_control.h
index 394dd22..e35c669 100644
--- a/pcbnew/tools/pcbnew_control.h
+++ b/pcbnew/tools/pcbnew_control.h
@@ -41,10 +41,10 @@ public:
     PCBNEW_CONTROL();
 
     /// @copydoc TOOL_INTERACTIVE::Reset()
-    virtual void Reset( RESET_REASON aReason );
+    virtual void Reset( RESET_REASON aReason ) override;
 
     /// @copydoc TOOL_INTERACTIVE::Init()
-    virtual bool Init();
+    virtual bool Init() override;
 
     // View controls
     int ZoomInOut( const TOOL_EVENT& aEvent );
diff --git a/pcbnew/tools/placement_tool.h b/pcbnew/tools/placement_tool.h
index dad303c..2983bd9 100644
--- a/pcbnew/tools/placement_tool.h
+++ b/pcbnew/tools/placement_tool.h
@@ -36,10 +36,10 @@ public:
     virtual ~PLACEMENT_TOOL();
 
     /// @copydoc TOOL_INTERACTIVE::Reset()
-    virtual void Reset( RESET_REASON aReason ) {}
+    virtual void Reset( RESET_REASON aReason ) override {}
 
     /// @copydoc TOOL_INTERACTIVE::Init()
-    virtual bool Init();
+    virtual bool Init() override;
 
     /**
      * Function AlignTop()
diff --git a/pcbnew/tools/point_editor.h b/pcbnew/tools/point_editor.h
index 2f67072..bebc6ad 100644
--- a/pcbnew/tools/point_editor.h
+++ b/pcbnew/tools/point_editor.h
@@ -43,10 +43,10 @@ public:
     POINT_EDITOR();
 
     /// @copydoc TOOL_INTERACTIVE::Reset()
-    virtual void Reset( RESET_REASON aReason );
+    virtual void Reset( RESET_REASON aReason ) override;
 
     /// @copydoc TOOL_INTERACTIVE::Init()
-    virtual bool Init();
+    virtual bool Init() override;
 
     /**
      * Function OnSelected()
diff --git a/pcbnew/tools/selection_area.h b/pcbnew/tools/selection_area.h
index cdfca4e..24a93af 100644
--- a/pcbnew/tools/selection_area.h
+++ b/pcbnew/tools/selection_area.h
@@ -47,11 +47,11 @@ public:
     SELECTION_AREA();
     ~SELECTION_AREA() {};
 
-    virtual const BOX2I ViewBBox() const;
+    virtual const BOX2I ViewBBox() const override;
 
-    virtual void ViewDraw( int aLayer, KIGFX::GAL* aGal ) const;
+    virtual void ViewDraw( int aLayer, KIGFX::GAL* aGal ) const override;
 
-    virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
+    virtual void ViewGetLayers( int aLayers[], int& aCount ) const override;
 
     void SetOrigin( VECTOR2I aOrigin )
     {
@@ -64,15 +64,13 @@ public:
     }
 
 #if defined(DEBUG)
-    virtual void Show( int x, std::ostream& st ) const
-    {
-    }
+    virtual void Show( int x, std::ostream& st ) const override {}
 #endif
 
     /** Get class name
      * @return  string "SELECTION_AREA"
      */
-    virtual wxString GetClass() const
+    virtual wxString GetClass() const override
     {
         return "SELECTION_AREA";
     }
diff --git a/pcbnew/tools/selection_tool.h b/pcbnew/tools/selection_tool.h
index 6a4d66b..a027d0a 100644
--- a/pcbnew/tools/selection_tool.h
+++ b/pcbnew/tools/selection_tool.h
@@ -105,7 +105,7 @@ public:
     ~SELECTION_TOOL();
 
     /// @copydoc TOOL_INTERACTIVE::Reset()
-    virtual void Reset( RESET_REASON aReason );
+    virtual void Reset( RESET_REASON aReason ) override;
 
     /**
      * Function Main()
diff --git a/pcbnew/xchgmod.cpp b/pcbnew/xchgmod.cpp
index 38ab908..c723d7b 100644
--- a/pcbnew/xchgmod.cpp
+++ b/pcbnew/xchgmod.cpp
@@ -62,11 +62,11 @@ public:
     ~DIALOG_EXCHANGE_MODULE() { };
 
 private:
-    virtual void OnSelectionClicked( wxCommandEvent& event );
-    virtual void OnOkClick( wxCommandEvent& event );
-    virtual void OnQuit( wxCommandEvent& event );
-    virtual void BrowseAndSelectFootprint( wxCommandEvent& event );
-    virtual void RebuildCmpList( wxCommandEvent& event );
+    virtual void OnSelectionClicked( wxCommandEvent& event ) override;
+    virtual void OnOkClick( wxCommandEvent& event ) override;
+    virtual void OnQuit( wxCommandEvent& event ) override;
+    virtual void BrowseAndSelectFootprint( wxCommandEvent& event ) override;
+    virtual void RebuildCmpList( wxCommandEvent& event ) override;
     void init();
 
     void ChangeCurrentFootprint();
diff --git a/polygon/clipper.hpp b/polygon/clipper.hpp
index bb6c568..c812158 100644
--- a/polygon/clipper.hpp
+++ b/polygon/clipper.hpp
@@ -269,7 +269,7 @@ public:
   void ZFillFunction(ZFillCallback zFillFunc);
 #endif
 protected:
-  virtual void Reset();
+  virtual void Reset() override;
   virtual bool ExecuteInternal();
 private:
   PolyOutList       m_PolyOuts;
@@ -382,7 +382,7 @@ class clipperException : public std::exception
   public:
     clipperException(const char* description): m_descr(description) {}
     virtual ~clipperException() throw() {}
-    virtual const char* what() const throw() {return m_descr.c_str();}
+    virtual const char* what() const throw() override {return m_descr.c_str();}
   private:
     std::string m_descr;
 };
diff --git a/utils/idftools/dxf2idf.h b/utils/idftools/dxf2idf.h
index 5234f24..120e269 100644
--- a/utils/idftools/dxf2idf.h
+++ b/utils/idftools/dxf2idf.h
@@ -41,58 +41,58 @@ public:
 
 private:
     // DRW_Interface implemented callback functions
-    virtual void addLine(const DRW_Line& data);
-    virtual void addArc(const DRW_Arc& data );
-    virtual void addCircle(const DRW_Circle& data );
+    virtual void addLine(const DRW_Line& data) override;
+    virtual void addArc(const DRW_Arc& data ) override;
+    virtual void addCircle(const DRW_Circle& data ) override;
 
     // DRW_Interface callbacks unsupported by DXF2IDF
-    virtual void addHeader( const DRW_Header* data ) {}
-    virtual void addLType( const DRW_LType& data ) {}
-    virtual void addLayer( const DRW_Layer& data ) {}
-    virtual void addDimStyle( const DRW_Dimstyle& data ) {}
-    virtual void addVport(const DRW_Vport& data) {}
-    virtual void addTextStyle(const DRW_Textstyle& data) {}
-    virtual void addBlock(const DRW_Block& data ) {}
-    virtual void setBlock(const int handle) {}
-    virtual void endBlock() {}
-    virtual void addPoint(const DRW_Point& data ) {}
-    virtual void addRay(const DRW_Ray& data ) {}
-    virtual void addXline(const DRW_Xline& data ) {}
-    virtual void addEllipse(const DRW_Ellipse& data ) {}
-    virtual void addLWPolyline(const DRW_LWPolyline& data ) {}
-    virtual void addPolyline(const DRW_Polyline& data ) {}
-    virtual void addSpline(const DRW_Spline* data ) {}
-    virtual void addKnot(const DRW_Entity&) {}
-    virtual void addInsert(const DRW_Insert& data ) {}
-    virtual void addTrace(const DRW_Trace& data ) {}
-    virtual void add3dFace(const DRW_3Dface& data ) {}
-    virtual void addSolid(const DRW_Solid& data ) {}
-    virtual void addMText(const DRW_MText& data) {}
-    virtual void addText(const DRW_Text& data ) {}
-    virtual void addDimAlign(const DRW_DimAligned *data ) {}
-    virtual void addDimLinear(const DRW_DimLinear *data ) {}
-    virtual void addDimRadial(const DRW_DimRadial *data ) {}
-    virtual void addDimDiametric(const DRW_DimDiametric *data ) {}
-    virtual void addDimAngular(const DRW_DimAngular *data ) {}
-    virtual void addDimAngular3P(const DRW_DimAngular3p *data ) {}
-    virtual void addDimOrdinate(const DRW_DimOrdinate *data ) {}
-    virtual void addLeader(const DRW_Leader *data ) {}
-    virtual void addHatch(const DRW_Hatch* data ) {}
-    virtual void addViewport(const DRW_Viewport& data) {}
-    virtual void addImage(const DRW_Image* data ) {}
-    virtual void linkImage(const DRW_ImageDef* data ) {}
-    virtual void addComment(const char*) {}
-    virtual void writeHeader(DRW_Header& data) {}
-    virtual void writeBlocks() {}
-    virtual void writeBlockRecords() {}
-    virtual void writeEntities() {}
-    virtual void writeLTypes() {}
-    virtual void writeLayers() {}
-    virtual void writeTextstyles() {}
-    virtual void writeVports() {}
-    virtual void writeDimstyles() {}
-    virtual void addAppId( const DRW_AppId& data ) {}
-    virtual void writeAppId() {}
+    virtual void addHeader( const DRW_Header* data ) override {}
+    virtual void addLType( const DRW_LType& data ) override {}
+    virtual void addLayer( const DRW_Layer& data ) override {}
+    virtual void addDimStyle( const DRW_Dimstyle& data ) override {}
+    virtual void addVport(const DRW_Vport& data) override {}
+    virtual void addTextStyle(const DRW_Textstyle& data) override {}
+    virtual void addBlock(const DRW_Block& data ) override {}
+    virtual void setBlock(const int handle) override {}
+    virtual void endBlock() override {}
+    virtual void addPoint(const DRW_Point& data ) override {}
+    virtual void addRay(const DRW_Ray& data ) override {}
+    virtual void addXline(const DRW_Xline& data ) override {}
+    virtual void addEllipse(const DRW_Ellipse& data ) override {}
+    virtual void addLWPolyline(const DRW_LWPolyline& data ) override {}
+    virtual void addPolyline(const DRW_Polyline& data ) override {}
+    virtual void addSpline(const DRW_Spline* data ) override {}
+    virtual void addKnot(const DRW_Entity&) override {}
+    virtual void addInsert(const DRW_Insert& data ) override {}
+    virtual void addTrace(const DRW_Trace& data ) override {}
+    virtual void add3dFace(const DRW_3Dface& data ) override {}
+    virtual void addSolid(const DRW_Solid& data ) override {}
+    virtual void addMText(const DRW_MText& data) override {}
+    virtual void addText(const DRW_Text& data ) override {}
+    virtual void addDimAlign(const DRW_DimAligned *data ) override {}
+    virtual void addDimLinear(const DRW_DimLinear *data ) override {}
+    virtual void addDimRadial(const DRW_DimRadial *data ) override {}
+    virtual void addDimDiametric(const DRW_DimDiametric *data ) override {}
+    virtual void addDimAngular(const DRW_DimAngular *data ) override {}
+    virtual void addDimAngular3P(const DRW_DimAngular3p *data ) override {}
+    virtual void addDimOrdinate(const DRW_DimOrdinate *data ) override {}
+    virtual void addLeader(const DRW_Leader *data ) override {}
+    virtual void addHatch(const DRW_Hatch* data ) override {}
+    virtual void addViewport(const DRW_Viewport& data) override {}
+    virtual void addImage(const DRW_Image* data ) override {}
+    virtual void linkImage(const DRW_ImageDef* data ) override {}
+    virtual void addComment(const char*) override {}
+    virtual void writeHeader(DRW_Header& data) override {}
+    virtual void writeBlocks() override {}
+    virtual void writeBlockRecords() override {}
+    virtual void writeEntities() override {}
+    virtual void writeLTypes() override {}
+    virtual void writeLayers() override {}
+    virtual void writeTextstyles() override {}
+    virtual void writeVports() override {}
+    virtual void writeDimstyles() override {}
+    virtual void addAppId( const DRW_AppId& data ) override {}
+    virtual void writeAppId() override {}
 };
 
 #endif  // DXF2IDF_H
diff --git a/utils/idftools/idf_common.h b/utils/idftools/idf_common.h
index ac8a4db..9010ad1 100644
--- a/utils/idftools/idf_common.h
+++ b/utils/idftools/idf_common.h
@@ -66,7 +66,7 @@ struct IDF_ERROR : std::exception
 
     virtual ~IDF_ERROR() throw();
 
-    virtual const char* what() const throw();
+    virtual const char* what() const throw() override;
 };
 
 
diff --git a/utils/idftools/idf_outlines.h b/utils/idftools/idf_outlines.h
index 33957e7..d50d149 100644
--- a/utils/idftools/idf_outlines.h
+++ b/utils/idftools/idf_outlines.h
@@ -364,7 +364,7 @@ private:
      * @param aHeader is the .OTHER_OUTLINE header as read via FetchIDFLine
      */
     virtual void readData( std::ifstream& aBoardFile, const std::string& aHeader,
-                           IDF3::IDF_VERSION aIdfVersion );
+                           IDF3::IDF_VERSION aIdfVersion ) override;
 
     /**
      * Function writeData
@@ -374,7 +374,7 @@ private:
      *
      * @return bool: true if the data was successfully written, otherwise false.
      */
-    virtual void writeData( std::ofstream& aBoardFile );
+    virtual void writeData( std::ofstream& aBoardFile ) override;
 
 public:
     OTHER_OUTLINE( IDF3_BOARD* aParent );
@@ -411,7 +411,7 @@ public:
      * Function Clear
      * deletes internal data except for the parent object
      */
-    virtual bool Clear( void );
+    virtual bool Clear( void ) override;
 };
 
 
@@ -432,13 +432,13 @@ private:
      * @param aHeader is the .ROUTE_OUTLINE header as returned by FetchIDFLine
      */
     virtual void readData( std::ifstream& aBoardFile, const std::string& aHeader,
-                           IDF3::IDF_VERSION aIdfVersion );
+                           IDF3::IDF_VERSION aIdfVersion ) override;
 
     /**
      * Function writeData
      * writes the ROUTE_OUTLINE data to an open IDFv3 file
      */
-    virtual void writeData( std::ofstream& aBoardFile );
+    virtual void writeData( std::ofstream& aBoardFile ) override;
 
 protected:
     IDF3::IDF_LAYER layers; // Routing layers (IDF spec)
@@ -464,7 +464,7 @@ public:
      * Function Clear
      * deletes internal data except for the parent object
      */
-    virtual bool Clear( void );
+    virtual bool Clear( void ) override;
 };
 
 /**
@@ -484,7 +484,7 @@ private:
      * @param aHeader is the .PLACE_OUTLINE header as returned by FetchIDFLine
      */
     virtual void readData( std::ifstream& aBoardFile, const std::string& aHeader,
-                           IDF3::IDF_VERSION aIdfVersion );
+                           IDF3::IDF_VERSION aIdfVersion ) override;
 
     /**
      * Function writeData
@@ -494,7 +494,7 @@ private:
      *
      * @return bool: true if the data was successfully written, otherwise false
      */
-    virtual void writeData( std::ofstream& aBoardFile );
+    virtual void writeData( std::ofstream& aBoardFile ) override;
 
 protected:
     IDF3::IDF_LAYER side;   // Board Side [TOP/BOTTOM/BOTH ONLY] (IDF spec)
@@ -534,7 +534,7 @@ public:
      * Function Clear
      * deletes all internal data
      */
-    virtual bool Clear( void );
+    virtual bool Clear( void ) override;
 };
 
 
@@ -593,7 +593,7 @@ private:
      * @param aHeader is the .PLACE_REGION header as returned by FetchIDFLine
      */
     virtual void readData( std::ifstream& aBoardFile, const std::string& aHeader,
-                           IDF3::IDF_VERSION aIdfVersion );
+                           IDF3::IDF_VERSION aIdfVersion ) override;
 
     /**
      * Function writeData
@@ -603,7 +603,7 @@ private:
      *
      * @return bool: true if the data is successfully written, otherwise false
      */
-    virtual void writeData( std::ofstream& aBoardFile );
+    virtual void writeData( std::ofstream& aBoardFile ) override;
 
 public:
     GROUP_OUTLINE( IDF3_BOARD* aParent );
@@ -640,7 +640,7 @@ public:
      * Function Clear
      * deletes internal data, subject to IDF ownership rules
      */
-    virtual bool Clear( void );
+    virtual bool Clear( void ) override;
 };
 
 
@@ -673,7 +673,7 @@ private:
      * @param aHeader is the .ELECTRICAL or .MECHANICAL header as returned by FetchIDFLine
      */
     virtual void readData( std::ifstream& aLibFile, const std::string& aHeader,
-                           IDF3::IDF_VERSION aIdfVersion );
+                           IDF3::IDF_VERSION aIdfVersion ) override;
 
     /**
      * Function writeData
@@ -683,7 +683,7 @@ private:
      *
      * @return bool: true if the data was successfully written, otherwise false
      */
-    virtual void writeData( std::ofstream& aLibFile );
+    virtual void writeData( std::ofstream& aLibFile ) override;
 
     /**
      * Function incrementRef
@@ -712,7 +712,7 @@ public:
      * Function Clear
      * deletes internal outline data
      */
-    virtual bool Clear( void );
+    virtual bool Clear( void ) override;
 
     /**
      * Function SetComponentClass
-- 
2.1.4



Follow ups

References