On 29 Sep 2017, at 6:14pm, Denis V. Razumovsky <t...@denis.im> wrote:
> Rule 10: All code must be compiled, from the first day of development, > with all compiler warnings enabled at the most > pedantic setting available. All code must compile without warnings. NASA's code is developed to run on one platform and to be compiled by one toolchain. SQLite has to be compilable by every C compiler anyone might feasibly use, and has to run on everything from supercomputers to set top boxes to mass spectrometers to those handheld things delivery companies use to schedule deliveries and take your signature. And they all use different compilers and CPUs, and the compilers are all designed for different versions of C, and the compilers all generate different warnings depending on which compilaton options you chose. Here’s what happens when you try to get rid of warnings: for every compiler warning you remove in GCC you get one new one in LLVM. If you do manage to get rid of them both you find you have a new one in CLANG, which one of the sposors happens to use and is therefore a big problem. Working just as hard as you know how, you finally manage to make all three of those compilers happy, only to find that SQLite now won’t compile at all in the toolchain used by the Navigation Data Standard, which develops the maps used in most SatNav devices. Alternatively, the developer team could do the work it’s currently doing, which gets rid of all compiler /errors/, and have code which works identically on all the literally billions of devices SQLite is installed on. Simon. _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users