Committed 1(v2)..3 in 6490..6492. Thank you. On Sat, Jan 16, 2016 at 04:41:47AM +0100, Simon Richter wrote: > Hi, > > these are portability patches, most of them derived from MSVC diagnostics. > > The MSVC standard library and compiler are a lot more picky about standards > compliance, so a lot of code that has only been tested on GCC is not > actually standards compliant. > > This patch series mainly reduces our reliance on GCC specifics. > > The atan2 overload resolution patch might be controversial because it > introduces a lot of ugly casts, so it may be better to introduce a helper > function or type here. > > Replacing an anonymous enum by a bunch of "static const int" is mainly for > the benefit of MSVC here, I'm not enough of a language lawyer to tell > whether the inability to resolve an addition operator inside a template > function argument list is a bug in the resolver, or actually more correct > than simply decaying the enum to an int. I've included that patch because > these really are just constant integers, which the compiler is allowed to > inline the same way as an enum, so this smells like a micro-optimization. > > Simon > > Simon Richter (11): > Avoid comparing filepos with integers > Drop some debug output > Clarify atan2 overloads > Avoid cast from const_iterator to iterator > Correct import/export of KIFACE_GETTER. > Add missing C++ stdlib headers > Open namespace around definitions > Use numeric_limits for NaN constant > Use const int instead of anonymous enum type > Avoid conflicting declaration for Pgm() > Replace GCC-specific __func__ with portable __FUNCTION__ > > common/gal/color4d.cpp | 4 +++- > common/gal/graphics_abstraction_layer.cpp | 2 ++ > common/grid_tricks.cpp | 2 ++ > common/selcolor.cpp | 2 ++ > common/tool/action_manager.cpp | 1 + > common/trigo.cpp | 2 +- > common/view/view.cpp | 2 +- > eeschema/class_library.h | 2 ++ > eeschema/dialogs/dialog_lib_edit_pin_table.cpp | 2 ++ > eeschema/sch_sheet_path.h | 2 ++ > gerbview/class_GERBER.cpp | 1 + > gerbview/gerbview_frame.cpp | 2 +- > include/common.h | 6 ++++++ > include/geometry/rtree.h | 6 ++---- > include/kiway.h | 9 +++++++-- > include/math/vector2d.h | 2 +- > include/pgm_base.h | 2 -- > include/tool/tool_event.h | 1 + > include/tool/tool_manager.h | 1 + > kicad/files-io.cpp | 2 +- > kicad/kicad.cpp | 9 ++++++++- > kicad/mainframe.cpp | 8 ++++---- > kicad/menubar.cpp | 6 +++--- > kicad/pgm_kicad.h | 3 ++- > kicad/prjconfig.cpp | 8 ++++---- > pcb_calculator/transline/transline.cpp | 1 + > pcbnew/class_dimension.cpp | 2 +- > pcbnew/class_dimension.h | 2 +- > pcbnew/class_drawsegment.cpp | 7 ++++--- > pcbnew/class_pad_draw_functions.cpp | 4 ++-- > pcbnew/kicad_plugin.cpp | 2 +- > pcbnew/layer_widget.cpp | 3 +++ > pcbnew/ratsnest_data.h | 2 ++ > pcbnew/ratsnest_viewitem.cpp | 4 +++- > pcbnew/router/pns_diff_pair.cpp | 1 + > pcbnew/router/pns_optimizer.cpp | 2 ++ > pcbnew/router/pns_utils.cpp | 2 ++ > pcbnew/tools/conditional_menu.h | 1 + > pcbnew/tools/drawing_tool.cpp | 10 +++++----- > pcbnew/tools/edit_points.h | 3 +++ > pcbnew/tools/pcbnew_control.cpp | 4 ---- > utils/idftools/idf_common.cpp | 1 + > utils/idftools/idf_helpers.cpp | 6 +++--- > 43 files changed, 96 insertions(+), 48 deletions(-) > > -- > 2.1.4 >
> _______________________________________________ > Mailing list: https://launchpad.net/~kicad-developers > Post to : [email protected] > Unsubscribe : https://launchpad.net/~kicad-developers > More help : https://help.launchpad.net/ListHelp _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

