From 926818097b0d9114bf9458ebc50488d2cab2f1de Mon Sep 17 00:00:00 2001 From: jean-pierre charras Date: Tue, 12 Jul 2022 18:00:50 +0200 Subject: [PATCH] Fix compatibility issues with wxWidgets 3.2 and gcc 12.1: hastable.h: remove deprecated binary/unary base class not actually needed. Fix compil warnings. From master branch. --- include/hashtables.h | 9 ++------- pcbnew/plugins/pcad/s_expr_loader.cpp | 1 + pcbnew/tools/pcb_selection_tool.cpp | 2 +- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/include/hashtables.h b/include/hashtables.h index 2f52cddfa8..e7eb4db43c 100644 --- a/include/hashtables.h +++ b/include/hashtables.h @@ -27,13 +27,12 @@ #include -#include #include // First some utility classes and functions /// Equality test for "const char*" type used in very specialized KEYWORD_MAP below -struct iequal_to : std::binary_function< const char*, const char*, bool > +struct iequal_to { bool operator()( const char* x, const char* y ) const { @@ -77,7 +76,7 @@ struct fnv_1a /// Hash function for wxString, counterpart of std::string hash -struct WXSTRING_HASH : std::unary_function +struct WXSTRING_HASH { std::size_t operator()( const wxString& aString ) const { @@ -128,9 +127,5 @@ struct WXSTRING_HASH : std::unary_function */ typedef std::unordered_map< const char*, int, fnv_1a, iequal_to > KEYWORD_MAP; -/// Map a C string to an EDA_RECT. -/// The key is the classname of the derived wxformbuilder dialog. -typedef std::unordered_map< std::string, EDA_RECT > RECT_MAP; - #endif // HASHTABLES_H_ diff --git a/pcbnew/plugins/pcad/s_expr_loader.cpp b/pcbnew/plugins/pcad/s_expr_loader.cpp index 53a8ff041a..30b113b319 100644 --- a/pcbnew/plugins/pcad/s_expr_loader.cpp +++ b/pcbnew/plugins/pcad/s_expr_loader.cpp @@ -30,6 +30,7 @@ #include #include +#include // for wxFopen namespace PCAD2KICAD { diff --git a/pcbnew/tools/pcb_selection_tool.cpp b/pcbnew/tools/pcb_selection_tool.cpp index 671dde8a06..23ba659a38 100644 --- a/pcbnew/tools/pcb_selection_tool.cpp +++ b/pcbnew/tools/pcb_selection_tool.cpp @@ -2546,7 +2546,7 @@ void PCB_SELECTION_TOOL::GuessSelectionCandidates( GENERAL_COLLECTOR& aCollector for( int i = 0; i < aCollector.GetCount(); ++i ) { BOARD_ITEM* item = aCollector[i]; - double area; + double area = 0.0; if( ( item->Type() == PCB_ZONE_T || item->Type() == PCB_FP_ZONE_T ) && static_cast( item )->HitTestForEdge( where, MAX_SLOP * pixel / 2 ) )