mosra / magnum

Lightweight and modular C++11 graphics middleware for games and data visualization
https://magnum.graphics/
Other
4.75k stars 439 forks source link

Include <string> to fix errors in AbstractSceneConverter and Abstract… #556

Closed EhWhoAmI closed 2 years ago

EhWhoAmI commented 2 years ago

…ImageConverter when compiling when defined MAGNUM_BUILD_DEPRECATED.

codecov[bot] commented 2 years ago

Codecov Report

Merging #556 (05384f5) into master (3bff4c7) will not change coverage. The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #556   +/-   ##
=======================================
  Coverage   83.84%   83.84%           
=======================================
  Files         523      523           
  Lines       33880    33880           
=======================================
  Hits        28407    28407           
  Misses       5473     5473           
Impacted Files Coverage Δ
src/Magnum/Trade/AbstractImageConverter.h 100.00% <ø> (ø)
src/Magnum/Trade/AbstractSceneConverter.h 100.00% <ø> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 3bff4c7...05384f5. Read the comment docs.

mosra commented 2 years ago

Thank you! Sorry that you were the first to discover this, it was caused by a recent cleanup of STL string usage in the plugin manager and apparently somehow none of the CI builds use these interfaces without also explicitly including <string> or <sstream>.

I modified your fix to do a forward declaration of std::string on implementations that are able to do that, and including it also only if the deprecated APIs are needed so it doesn't unconditionally bloat the header again. Pushed as 54394e2c2f0029aa1f767ac895829d4070616328.