fix(build): resolve ambiguous overload with GCC 15 and wxWidgets 3.2.4+ #1211

Open
opened 2026-04-05 17:01:26 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @TheCrabe on 1/1/2026

Summary

Fix compilation errors on systems with GCC 15 and wxWidgets 3.2.4+ caused by ambiguous overload resolution.

Changes

  • PhysicalPrinterDialog.cpp: Explicitly specify std::vector<std::string> for set_values() call
  • Plater.cpp: Explicitly specify std::vector<fs::path> for load_files() calls (3 occurrences)

Root Cause

wxWidgets 3.2.4 introduced initializer list constructors for wxArrayString, creating ambiguity when the compiler must choose between std::vector<T> and wxArrayString for brace-enclosed initializer lists.

Testing

  • Tested on Arch Linux with GCC 15.2.1 and wxWidgets 3.2.9

Reference

Same fix as PrusaSlicer:

Fixes #11802

*Originally created by @TheCrabe on 1/1/2026* ## Summary Fix compilation errors on systems with GCC 15 and wxWidgets 3.2.4+ caused by ambiguous overload resolution. ## Changes - `PhysicalPrinterDialog.cpp`: Explicitly specify `std::vector<std::string>` for `set_values()` call - `Plater.cpp`: Explicitly specify `std::vector<fs::path>` for `load_files()` calls (3 occurrences) ## Root Cause wxWidgets 3.2.4 introduced initializer list constructors for `wxArrayString`, creating ambiguity when the compiler must choose between `std::vector<T>` and `wxArrayString` for brace-enclosed initializer lists. ## Testing - Tested on Arch Linux with GCC 15.2.1 and wxWidgets 3.2.9 ## Reference Same fix as PrusaSlicer: - https://github.com/prusa3d/PrusaSlicer/issues/11768 - https://github.com/prusa3d/PrusaSlicer/pull/11769 Fixes #11802
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/OrcaSlicer#1211