New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clang compilation warnings #165
Comments
The "not handled" warnings are in the annoying nanny category. The signed comparison warnings should be addressed, the compressedSize variables are intended to be negative as an error condition, their type should be ssize_t. |
Signed comparison warnings happened due to confusing I would suggest to make it signed and define |
Good catch! ImathInt64 uses tricks that are no longer necessary; there is no longer a need to specialize per compiler.. If you make the change, please use typedef int64_t Int64; |
Have dug deeper and found out that a lot of code relies on Int64 unsigned nature and only some cases treat it as signed. And there are a lot of code which mixing signed and unsigned values. Proper fixing requires deep analysis and massive changes, but this particular case can be covered. |
Should probably open another issue with your findings if you wouldn't mind. The ad hoc treatment of signed/unsigned is undesirable. |
* commit '0cf11d74c27bd191f134ada90ac773a38860fbf9': (24 commits) initial port of PyIlmBase to python 3 replicate configure / cmake changes from ilmbase add move constructor and assignment operator Fix Windows Python binding builds. Does not address PyImath runtime issues, but does allow build to succeed Fix c++11 detection issue on windows. Fix ilmbase DLL export warnings enable different c++ standards to be selected instead of just c++14 Incorporate review feedback add compatibility std::condition_variable semaphore when posix semaphores not available fix error overwriting beginning of config file remove the dynamic exception for all versions of c++ unless FORCE_CXX03 is on ThreadPool improvements switch mutex to be based on std::mutex when available switch IlmThread to use c++11 threads when enabled use dynamic exception macro to avoid warnings in c++14 mode add #define to manage dynamic exception deprecation in c++11/14 configuration changes to enable c++14 Cmake now building OpenEXR successfully for Windows Delete build.log fix defect in semaphore implementation which caused application hang at exit time, because not all worker threads get woken up when task semaphore is repeatedly posted (to wake them up) after setting the stopping flag in the thread pool fix comparison of unsigned expression < 0 (Issue AcademySoftwareFoundation#165) ...
The code base in master now compiles cleanly with gcc 9 and clang 8 using -Wall |
and
The text was updated successfully, but these errors were encountered: