Silence more warnings
This MR takes care of most warnings that I found across MSVC, Clang, and GCC on Windows.
Leftovers (that I remember as of submittal time):
- There's an character escape error in the ffmpeg bindings.
\%06
, not sure what the intention of the escape is, so I left it alone. - There are a couple concept-like iterator classes that override methods (or not) depending on the BaseClass. I left these alone too.
- KoColorSpaceMaths need consistent typing for the boolean operations, currently these throw a range conversion warning between int and half/float.
Assorted things to check out:
- I finally fixed the MSVC/MinGW discrepancy on extern template exports.
- Some shared pointer usages were worked around because Qt uses freed memory between copies (!!)
I ask of reviewers to check out each individual commit and pick them apart to taste.
Test Plan
Build Krita and check the log.
Formalities Checklist
-
I confirmed this builds. -
I confirmed Krita ran and the relevant functions work. -
I tested the relevant unit tests and can confirm they are not broken. (If not possible, don't hesitate to ask for help!) -
I made sure my commits build individually and have good descriptions as per KDE guidelines. -
I made sure my code conforms to the standards set in the HACKING file. -
I can confirm the code is licensed and attributed appropriately, and that unattributed code is mine, as per KDE Licensing Policy.