Sorry for this! I am using C++ Builder and I didn't realize this. I will look for the proper settings in the Editor. I really hope you haven't spent too much time to recover my changes....
Eliminated some more nullptr warnings. See [feature-requests:#248].
Eliminated some nullptr warnings. See [feature-requests:#248].
Is there a way to contribute with this action? You are doing a wonderful and huge work. Do you want to continue by yourself, or may I try to contribute? I am not an expert of SVN, but I think I can learn how to manage it...
You are right. For what I have understood the clang version of the 11.3 community edition is 5.0, while the one that comes with the 12.1 is 15.0. The list of the warining of the clang (19.0) can be found here (https://clang.llvm.org/docs/DiagnosticsReference.html#wreserved-macro-identifier), so I deduce that some of the warnings and flags were introduced AFTER clang 5.0. If this is true, it may be that it might also occur for other warnings.....
OK, here's my unreliable benchmarks (just one build for each version). C++ Builder 11.3, Community edition. 64 bit DLL, VCL compatible. trunk version 7037: time 12:21, warnings 46954, size 7453 KB (some classes are missing as compared to OWL7, so I also assume less code to compile). Minor changes to the code. branch version C:\owlnext-code-r7037-branches-7.0: time 13:52, warnings 78045, size 8050 KB OWLNext 7.13: time 16:28, warnings 129797, size 8050 KB
Well I have discovered that warnings can be disabled with the clang compiler via pragmas. So, with C++ Builder and the clang you can disable some of them by adding these (e.g. at the beginning of a header file): #pragma clang diagnostic ignored "-Wold-style-cast" #pragma clang diagnostic ignored "-Wpadded" #pragma clang diagnostic ignored "-Wc99-compat" #pragma clang diagnostic ignored "-Wcast-qual" #pragma clang diagnostic ignored "-Wconversion" #pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant"...
Well I have discovered that warnings can be disabled with the clang compiler via pragmas. So, with C++ Builder and the clang you can disable some of them by adding these (e.g. at the beginning of a header file): #pragma clang diagnostic ignored "-Wold-style-cast" #pragma clang diagnostic ignored "-Wpadded" #pragma clang diagnostic ignored "-Wc99-compat" #pragma clang diagnostic ignored "-Wcast-qual" #pragma clang diagnostic ignored "-Wconversion" #pragma clang diagnostic ignored "-Wzero-as-null-...