diff --git a/common/bitmap_base.cpp b/common/bitmap_base.cpp index 417788baf9..7e27d5b755 100644 --- a/common/bitmap_base.cpp +++ b/common/bitmap_base.cpp @@ -60,6 +60,7 @@ BITMAP_BASE::BITMAP_BASE( const BITMAP_BASE& aSchBitmap ) m_isMirroredX = aSchBitmap.m_isMirroredX; m_isMirroredY = aSchBitmap.m_isMirroredY; m_rotation = aSchBitmap.m_rotation; + m_imageType = aSchBitmap.m_imageType; m_image = nullptr; m_bitmap = nullptr; @@ -502,4 +503,4 @@ void BITMAP_BASE::UpdateImageDataBuffer() stream.CopyTo( m_imageData.GetData(), stream.GetLength() ); m_imageData.SetDataLen( stream.GetLength() ); } -} \ No newline at end of file +} diff --git a/common/lib_tree_model.cpp b/common/lib_tree_model.cpp index 58c34386a0..25ca5eae99 100644 --- a/common/lib_tree_model.cpp +++ b/common/lib_tree_model.cpp @@ -131,6 +131,7 @@ LIB_TREE_NODE::LIB_TREE_NODE() m_IntrinsicRank( 0 ), m_Score( 0 ), m_Pinned( false ), + m_PinCount( 0 ), m_Unit( 0 ), m_IsRoot( false ) {} diff --git a/common/plugins/cadstar/cadstar_parts_lib_parser.cpp b/common/plugins/cadstar/cadstar_parts_lib_parser.cpp index 5928b24960..1999d736b6 100644 --- a/common/plugins/cadstar/cadstar_parts_lib_parser.cpp +++ b/common/plugins/cadstar/cadstar_parts_lib_parser.cpp @@ -565,7 +565,7 @@ CADSTAR_PARTS_LIB_MODEL readCadstarHelper( INPUT_TYPE& aInput ) } catch( const parse_error& e ) { - const auto p = e.positions().front(); + const auto& p = e.positions().front(); std::cerr << "Error at line " << p.line << ", column " << p.column << std::endl << aInput.line_at( p ) << std::endl << std::setw( p.column ) << '^' << std::endl diff --git a/common/widgets/search_pane_tab.cpp b/common/widgets/search_pane_tab.cpp index fb33b61434..7f0297d0c1 100644 --- a/common/widgets/search_pane_tab.cpp +++ b/common/widgets/search_pane_tab.cpp @@ -1,7 +1,7 @@ /* * This program source code file is part of KiCad, a free EDA CAD application. * - * Copyright (C) 2022 KiCad Developers, see AUTHORS.txt for contributors. + * Copyright (C) 2022-2023 KiCad Developers, see AUTHORS.txt for contributors. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the @@ -77,7 +77,7 @@ void SEARCH_PANE_LISTVIEW::GetSelectRowsList( std::vector<long>& aSelectedList ) void SEARCH_PANE_LISTVIEW::OnItemActivated( wxListEvent& aEvent ) { CallAfter( - [=]() + [&]() { m_handler->ActivateItem( aEvent.GetIndex() ); } ); diff --git a/include/plotters/plotters_pslike.h b/include/plotters/plotters_pslike.h index 5a7398fd42..a6e757350a 100644 --- a/include/plotters/plotters_pslike.h +++ b/include/plotters/plotters_pslike.h @@ -241,6 +241,8 @@ public: PDF_PLOTTER() : m_pageTreeHandle( 0 ), m_fontResDictHandle( 0 ), + m_imgResDictHandle( 0 ), + m_jsNamesHandle( 0 ), m_pageStreamHandle( 0 ), m_streamLengthHandle( 0 ), m_workFile( nullptr ), diff --git a/kicad/update_manager.cpp b/kicad/update_manager.cpp index e02011cde8..40afbd497d 100644 --- a/kicad/update_manager.cpp +++ b/kicad/update_manager.cpp @@ -224,16 +224,18 @@ void UPDATE_MANAGER::CheckForUpdate( wxWindow* aNoticeParent ) if( response.version != settings->m_lastReceivedUpdate ) { aNoticeParent->CallAfter( - [=]() + [&]() { auto notice = new DIALOG_UPDATE_NOTICE( aNoticeParent, response.version, response.details_url, response.downloads_url ); int retCode = notice->ShowModal(); + if( retCode != wxID_RETRY ) { - // basically saving the last received update prevents us from prompting again + // basically saving the last received update prevents us from + // prompting again settings->m_lastReceivedUpdate = response.version; } } ); @@ -255,4 +257,4 @@ void UPDATE_MANAGER::CheckForUpdate( wxWindow* aNoticeParent ) thread_pool& tp = GetKiCadThreadPool(); tp.push_task( update_check ); -} \ No newline at end of file +} diff --git a/libs/kimath/include/geometry/polygon_triangulation.h b/libs/kimath/include/geometry/polygon_triangulation.h index 640f5899e8..6841409645 100644 --- a/libs/kimath/include/geometry/polygon_triangulation.h +++ b/libs/kimath/include/geometry/polygon_triangulation.h @@ -1,7 +1,7 @@ /* * This program source code file is part of KiCad, a free EDA CAD application. * - * Modifications Copyright (C) 2018-2021 KiCad Developers + * Modifications Copyright (C) 2018-2023 KiCad Developers * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -60,6 +60,8 @@ class PolygonTriangulation { public: PolygonTriangulation( SHAPE_POLY_SET::TRIANGULATED_POLYGON& aResult ) : + m_prefactor_x( 0.0 ), + m_prefactor_y( 0.0 ), m_result( aResult ) {}; diff --git a/pcbnew/dialogs/dialog_net_inspector.cpp b/pcbnew/dialogs/dialog_net_inspector.cpp index ed98292eb5..9220ba89d6 100644 --- a/pcbnew/dialogs/dialog_net_inspector.cpp +++ b/pcbnew/dialogs/dialog_net_inspector.cpp @@ -1177,10 +1177,23 @@ DIALOG_NET_INSPECTOR::~DIALOG_NET_INSPECTOR() g_settings.col_order = column_order; SETTINGS_MANAGER& mgr = Pgm().GetSettingsManager(); - PCBNEW_SETTINGS* app_settings = mgr.GetAppSettings<PCBNEW_SETTINGS>(); - app_settings->m_NetInspector.group_by_text = g_settings.group_by_text; - app_settings->m_NetInspector.group_by = g_settings.group_by; - app_settings->m_NetInspector.group_by_kind = g_settings.group_by_kind; + PCBNEW_SETTINGS* app_settings = nullptr; + + try + { + app_settings = mgr.GetAppSettings<PCBNEW_SETTINGS>(); + } + catch( const std::runtime_error& err ) + { + wxLogWarning( wxS( "%s" ), err.what() ); + } + + if( app_settings ) + { + app_settings->m_NetInspector.group_by_text = g_settings.group_by_text; + app_settings->m_NetInspector.group_by = g_settings.group_by; + app_settings->m_NetInspector.group_by_kind = g_settings.group_by_kind; + } // the displayed list elements are going to be deleted before the list view itself. // in some cases it might still do queries on the data model, which would crash diff --git a/pcbnew/plugins/fabmaster/import_fabmaster.cpp b/pcbnew/plugins/fabmaster/import_fabmaster.cpp index 8057c7b058..ac8165fc2a 100644 --- a/pcbnew/plugins/fabmaster/import_fabmaster.cpp +++ b/pcbnew/plugins/fabmaster/import_fabmaster.cpp @@ -361,18 +361,18 @@ size_t FABMASTER::processPadStackLayers( size_t aRow ) continue; } - auto pad_name = row[pad_name_col]; - auto pad_num = row[pad_num_col]; - auto pad_layer = row[pad_lay_col]; - auto pad_is_fixed = row[pad_fix_col]; - auto pad_is_via = row[pad_via_col]; - auto pad_shape = row[pad_shape_col]; - auto pad_width = row[pad_width_col]; - auto pad_height = row[pad_height_col]; - auto pad_xoff = row[pad_xoff_col]; - auto pad_yoff = row[pad_yoff_col]; - auto pad_flash = row[pad_flash_col]; - auto pad_shapename = row[pad_shape_name_col]; + auto& pad_name = row[pad_name_col]; + auto& pad_num = row[pad_num_col]; + auto& pad_layer = row[pad_lay_col]; + auto& pad_is_fixed = row[pad_fix_col]; + auto& pad_is_via = row[pad_via_col]; + auto& pad_shape = row[pad_shape_col]; + auto& pad_width = row[pad_width_col]; + auto& pad_height = row[pad_height_col]; + auto& pad_xoff = row[pad_xoff_col]; + auto& pad_yoff = row[pad_yoff_col]; + auto& pad_flash = row[pad_flash_col]; + auto& pad_shapename = row[pad_shape_name_col]; // This layer setting seems to be unused if( pad_layer == "INTERNAL_PAD_DEF" || pad_layer == "internal_pad_def" ) @@ -444,18 +444,18 @@ size_t FABMASTER::processPadStacks( size_t aRow ) continue; } - auto pad_name = row[pad_name_col]; - auto pad_num = row[pad_num_col]; - auto pad_layer = row[pad_lay_col]; - auto pad_is_fixed = row[pad_fix_col]; - auto pad_is_via = row[pad_via_col]; - auto pad_shape = row[pad_shape_col]; - auto pad_width = row[pad_width_col]; - auto pad_height = row[pad_height_col]; - auto pad_xoff = row[pad_xoff_col]; - auto pad_yoff = row[pad_yoff_col]; - auto pad_flash = row[pad_flash_col]; - auto pad_shapename = row[pad_shape_name_col]; + auto& pad_name = row[pad_name_col]; + auto& pad_num = row[pad_num_col]; + auto& pad_layer = row[pad_lay_col]; + auto& pad_is_fixed = row[pad_fix_col]; + auto& pad_is_via = row[pad_via_col]; + auto& pad_shape = row[pad_shape_col]; + auto& pad_width = row[pad_width_col]; + auto& pad_height = row[pad_height_col]; + auto& pad_xoff = row[pad_xoff_col]; + auto& pad_yoff = row[pad_yoff_col]; + auto& pad_flash = row[pad_flash_col]; + auto& pad_shapename = row[pad_shape_name_col]; // This layer setting seems to be unused if( pad_layer == "INTERNAL_PAD_DEF" || pad_layer == "internal_pad_def" ) @@ -659,7 +659,7 @@ size_t FABMASTER::processSimpleLayers( size_t aRow ) if( rownum >= rows.size() ) return -1; - auto header = rows[aRow]; + auto& header = rows[aRow]; double scale_factor = processScaleFactor( aRow + 1 ); if( scale_factor <= 0.0 ) @@ -803,7 +803,7 @@ size_t FABMASTER::processLayers( size_t aRow ) if( rownum >= rows.size() ) return -1; - auto header = rows[aRow]; + auto& header = rows[aRow]; double scale_factor = processScaleFactor( aRow + 1 ); if( scale_factor <= 0.0 ) @@ -835,14 +835,14 @@ size_t FABMASTER::processLayers( size_t aRow ) continue; } - auto layer_sort = row[layer_sort_col]; - auto layer_subclass = row[layer_subclass_col]; - auto layer_art = row[layer_art_col]; - auto layer_use = row[layer_use_col]; - auto layer_cond = row[layer_cond_col]; - auto layer_er = row[layer_er_col]; - auto layer_rho = row[layer_rho_col]; - auto layer_mat = row[layer_mat_col]; + auto& layer_sort = row[layer_sort_col]; + auto& layer_subclass = row[layer_subclass_col]; + auto& layer_art = row[layer_art_col]; + auto& layer_use = row[layer_use_col]; + auto& layer_cond = row[layer_cond_col]; + auto& layer_er = row[layer_er_col]; + auto& layer_rho = row[layer_rho_col]; + auto& layer_mat = row[layer_mat_col]; if( layer_mat == "AIR" ) continue; @@ -878,7 +878,7 @@ size_t FABMASTER::processCustomPads( size_t aRow ) if( rownum >= rows.size() ) return -1; - auto header = rows[aRow]; + auto& header = rows[aRow]; double scale_factor = processScaleFactor( aRow + 1 ); if( scale_factor <= 0.0 ) @@ -923,9 +923,9 @@ size_t FABMASTER::processCustomPads( size_t aRow ) continue; } - auto pad_layer = row[pad_subclass_col]; + auto& pad_layer = row[pad_subclass_col]; auto pad_shape_name = row[pad_shape_name_col]; - auto pad_record_tag = row[pad_record_tag_col]; + auto& pad_record_tag = row[pad_record_tag_col]; GRAPHIC_DATA gr_data; gr_data.graphic_dataname = row[pad_grdata_name_col]; @@ -940,9 +940,9 @@ size_t FABMASTER::processCustomPads( size_t aRow ) gr_data.graphic_data8 = row[pad_grdata8_col]; gr_data.graphic_data9 = row[pad_grdata9_col]; - auto pad_stack_name = row[pad_stack_name_col]; - auto pad_refdes = row[pad_refdes_col]; - auto pad_pin_num = row[pad_pin_num_col]; + auto& pad_stack_name = row[pad_stack_name_col]; + auto& pad_refdes = row[pad_refdes_col]; + auto& pad_pin_num = row[pad_pin_num_col]; // N.B. We get the FIGSHAPE records as "FIG_SHAPE name". We only want "name" // and we don't process other pad shape records @@ -1230,7 +1230,7 @@ size_t FABMASTER::processGeometry( size_t aRow ) continue; } - auto geo_tag = row[geo_tag_col]; + auto& geo_tag = row[geo_tag_col]; GRAPHIC_DATA gr_data; gr_data.graphic_dataname = row[geo_name_col]; @@ -1245,7 +1245,7 @@ size_t FABMASTER::processGeometry( size_t aRow ) gr_data.graphic_data8 = row[geo_grdata8_col]; gr_data.graphic_data9 = row[geo_grdata9_col]; - auto geo_refdes = row[geo_refdes_col]; + auto& geo_refdes = row[geo_refdes_col]; // Grouped graphics are a series of records with the same record ID but incrementing // Sequence numbers. diff --git a/qa/tests/common/test_color4d.cpp b/qa/tests/common/test_color4d.cpp index 5139d60826..ec391ec1dc 100644 --- a/qa/tests/common/test_color4d.cpp +++ b/qa/tests/common/test_color4d.cpp @@ -1,7 +1,7 @@ /* * This program source code file is part of KiCad, a free EDA CAD application. * - * Copyright (C) 2018-2019, 2023 KiCad Developers, see AUTHORS.TXT for contributors. + * Copyright (C) 2018-2023, 2023 KiCad Developers, see AUTHORS.TXT for contributors. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -161,7 +161,7 @@ BOOST_AUTO_TEST_CASE( WithAlpha ) for( const auto& c : cases ) { - auto col = c.start; + auto& col = c.start; const auto with_alpha = col.WithAlpha( c.factor ); BOOST_CHECK_EQUAL( with_alpha, c.expected ); diff --git a/qa/tests/spice/test_sim_model_ngspice.cpp b/qa/tests/spice/test_sim_model_ngspice.cpp index 9becaecbb2..1092536d7d 100644 --- a/qa/tests/spice/test_sim_model_ngspice.cpp +++ b/qa/tests/spice/test_sim_model_ngspice.cpp @@ -1,7 +1,7 @@ /* * This program source code file is part of KiCad, a free EDA CAD application. * - * Copyright (C) 2022 KiCad Developers, see AUTHORS.TXT for contributors. + * Copyright (C) 2022-2023 KiCad Developers, see AUTHORS.TXT for contributors. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -25,6 +25,7 @@ #include <sim/sim_model_ngspice.h> #include <boost/algorithm/string/predicate.hpp> + class TEST_SIM_MODEL_NGSPICE_FIXTURE : public SIM_MODEL_NGSPICE { public: @@ -52,15 +53,16 @@ BOOST_AUTO_TEST_CASE( ParamDuplicates ) { // Ensure there's no model parameters that have the same name. BOOST_CHECK( std::none_of( modelParams.begin(), modelParams.end(), - [modelParam]( const auto& aOtherModelParam ) + [&modelParam]( const auto& aOtherModelParam ) { return modelParam.id != aOtherModelParam.id && modelParam.name == aOtherModelParam.name; } ) ); - // Ensure there's no model parameters that have the same name as an instance parameter. + // Ensure there's no model parameters that have the same name as an + // instance parameter. BOOST_CHECK( std::none_of( instanceParams.begin(), instanceParams.end(), - [modelParam]( const auto& aInstanceParam ) + [&modelParam]( const auto& aInstanceParam ) { return modelParam.name == aInstanceParam.name; } ) ); @@ -72,7 +74,7 @@ BOOST_AUTO_TEST_CASE( ParamDuplicates ) // We append an "_" to model parameters to disambiguate from these // corresponding instance parameters. BOOST_CHECK( std::any_of( instanceParams.begin(), instanceParams.end(), - [modelParam]( const auto& aInstanceParam ) + [&modelParam]( const auto& aInstanceParam ) { return modelParam.name.substr( 0, modelParam.name.length() - 1 ) == aInstanceParam.name; @@ -80,14 +82,14 @@ BOOST_AUTO_TEST_CASE( ParamDuplicates ) } } } - + // Ensure there's no instance parameters that have the same name. for( const SIM_MODEL::PARAM::INFO& instanceParam : instanceParams ) { BOOST_TEST_CONTEXT( "Instance param name: " << instanceParam.name ) { BOOST_CHECK( std::none_of( instanceParams.begin(), instanceParams.end(), - [instanceParam]( const auto& aOtherInstanceParam ) + [&instanceParam]( const auto& aOtherInstanceParam ) { return instanceParam.id != aOtherInstanceParam.id && instanceParam.dir != SIM_MODEL::PARAM::DIR_OUT @@ -121,32 +123,32 @@ BOOST_AUTO_TEST_CASE( ParamCount ) BOOST_CHECK_EQUAL( modelParams.size(), 22 ); BOOST_CHECK_EQUAL( instanceParams.size(), 25 ); break; - + case MODEL_TYPE::CAPACITOR: BOOST_CHECK_EQUAL( modelParams.size(), 19 ); BOOST_CHECK_EQUAL( instanceParams.size(), 22 ); break; - + case MODEL_TYPE::INDUCTOR: BOOST_CHECK_EQUAL( modelParams.size(), 9 ); BOOST_CHECK_EQUAL( instanceParams.size(), 20 ); break;*/ - + /*case MODEL_TYPE::LTRA: BOOST_CHECK_EQUAL( modelParams.size(), 18 ); BOOST_CHECK_EQUAL( instanceParams.size(), 9 ); break; - + case MODEL_TYPE::TRANLINE: BOOST_CHECK_EQUAL( modelParams.size(), 0 ); BOOST_CHECK_EQUAL( instanceParams.size(), 17 ); break; - + case MODEL_TYPE::URC: BOOST_CHECK_EQUAL( modelParams.size(), 7 ); BOOST_CHECK_EQUAL( instanceParams.size(), 5 ); break;*/ - + /*case MODEL_TYPE::TRANSLINE: BOOST_CHECK_EQUAL( modelParams.size(), 6 ); BOOST_CHECK_EQUAL( instanceParams.size(), 3 ); @@ -156,57 +158,57 @@ BOOST_AUTO_TEST_CASE( ParamCount ) BOOST_CHECK_EQUAL( modelParams.size(), 7 ); BOOST_CHECK_EQUAL( instanceParams.size(), 8 ); break; - + case MODEL_TYPE::CSWITCH: BOOST_CHECK_EQUAL( modelParams.size(), 7 ); BOOST_CHECK_EQUAL( instanceParams.size(), 7 ); break;*/ - + case MODEL_TYPE::DIODE: BOOST_CHECK_EQUAL( modelParams.size(), 76 ); BOOST_CHECK_EQUAL( instanceParams.size(), 30 ); break; - + case MODEL_TYPE::BJT: BOOST_CHECK_EQUAL( modelParams.size(), 152 ); BOOST_CHECK_EQUAL( instanceParams.size(), 53 ); break; - + case MODEL_TYPE::VBIC: BOOST_CHECK_EQUAL( modelParams.size(), 117 ); BOOST_CHECK_EQUAL( instanceParams.size(), 45 ); break; - + case MODEL_TYPE::HICUM2: BOOST_CHECK_EQUAL( modelParams.size(), 149 ); BOOST_CHECK_EQUAL( instanceParams.size(), 61 ); break; - + case MODEL_TYPE::JFET: BOOST_CHECK_EQUAL( modelParams.size(), 34 ); BOOST_CHECK_EQUAL( instanceParams.size(), 28 ); break; - + case MODEL_TYPE::JFET2: BOOST_CHECK_EQUAL( modelParams.size(), 46 ); BOOST_CHECK_EQUAL( instanceParams.size(), 30 ); break; - + case MODEL_TYPE::MES: BOOST_CHECK_EQUAL( modelParams.size(), 22 ); BOOST_CHECK_EQUAL( instanceParams.size(), 25 ); break; - + case MODEL_TYPE::MESA: BOOST_CHECK_EQUAL( modelParams.size(), 71 ); BOOST_CHECK_EQUAL( instanceParams.size(), 30 ); break; - + case MODEL_TYPE::HFET1: BOOST_CHECK_EQUAL( modelParams.size(), 68 ); BOOST_CHECK_EQUAL( instanceParams.size(), 28 ); break; - + case MODEL_TYPE::HFET2: BOOST_CHECK_EQUAL( modelParams.size(), 40 ); BOOST_CHECK_EQUAL( instanceParams.size(), 28 ); @@ -216,91 +218,92 @@ BOOST_AUTO_TEST_CASE( ParamCount ) BOOST_CHECK_EQUAL( modelParams.size(), 69 ); BOOST_CHECK_EQUAL( instanceParams.size(), 36 ); break; - + case MODEL_TYPE::MOS1: BOOST_CHECK_EQUAL( modelParams.size(), 35 ); BOOST_CHECK_EQUAL( instanceParams.size(), 76 ); break; - + case MODEL_TYPE::MOS2: BOOST_CHECK_EQUAL( modelParams.size(), 42 ); BOOST_CHECK_EQUAL( instanceParams.size(), 76 ); break; - + case MODEL_TYPE::MOS3: BOOST_CHECK_EQUAL( modelParams.size(), 48 ); BOOST_CHECK_EQUAL( instanceParams.size(), 81 ); break; - + case MODEL_TYPE::BSIM1: BOOST_CHECK_EQUAL( modelParams.size(), 81 ); BOOST_CHECK_EQUAL( instanceParams.size(), 14 ); break; - + case MODEL_TYPE::BSIM2: BOOST_CHECK_EQUAL( modelParams.size(), 137 ); BOOST_CHECK_EQUAL( instanceParams.size(), 14 ); break; - + case MODEL_TYPE::MOS6: BOOST_CHECK_EQUAL( modelParams.size(), 42 ); BOOST_CHECK_EQUAL( instanceParams.size(), 78 ); break; - + case MODEL_TYPE::BSIM3: BOOST_CHECK_EQUAL( modelParams.size(), 429 ); BOOST_CHECK_EQUAL( instanceParams.size(), 46 ); break; - + case MODEL_TYPE::MOS9: BOOST_CHECK_EQUAL( modelParams.size(), 48 ); BOOST_CHECK_EQUAL( instanceParams.size(), 81 ); break; - + case MODEL_TYPE::B4SOI: BOOST_CHECK_EQUAL( modelParams.size(), 915 ); BOOST_CHECK_EQUAL( instanceParams.size(), 74 ); break; - + case MODEL_TYPE::BSIM4: BOOST_CHECK_EQUAL( modelParams.size(), 892 ); BOOST_CHECK_EQUAL( instanceParams.size(), 84 ); break; - + case MODEL_TYPE::B3SOIFD: BOOST_CHECK_EQUAL( modelParams.size(), 393 ); BOOST_CHECK_EQUAL( instanceParams.size(), 27 ); break; - + case MODEL_TYPE::B3SOIDD: BOOST_CHECK_EQUAL( modelParams.size(), 393 ); BOOST_CHECK_EQUAL( instanceParams.size(), 27 ); break; - + case MODEL_TYPE::B3SOIPD: BOOST_CHECK_EQUAL( modelParams.size(), 470 ); BOOST_CHECK_EQUAL( instanceParams.size(), 36 ); break; - + case MODEL_TYPE::HISIM2: BOOST_CHECK_EQUAL( modelParams.size(), 486 ); BOOST_CHECK_EQUAL( instanceParams.size(), 59 ); break; - + case MODEL_TYPE::HISIMHV1: BOOST_CHECK_EQUAL( modelParams.size(), 610 ); BOOST_CHECK_EQUAL( instanceParams.size(), 72 ); break; - + case MODEL_TYPE::HISIMHV2: BOOST_CHECK_EQUAL( modelParams.size(), 730 ); BOOST_CHECK_EQUAL( instanceParams.size(), 74 ); break; - + default: BOOST_FAIL( wxString::Format( "Unhandled type: %d " - "(if you created a new type you need to handle it in this switch statement)", + "(if you created a new type you need to handle it in this switch " + "statement)", type ) ); } }