From website.reader at protonmail.com Mon Jan 24 19:09:37 2022 From: website.reader at protonmail.com (website.reader) Date: Tue, 25 Jan 2022 00:09:37 +0000 Subject: [Cython] question on submitting a possibly massive bug report Message-ID: Hi all: I am not familiar with Cython, but have spent a few weeks looking at compiler warnings posted when the mathematical package called "sage v9.4" is compiled, which takes several hours to build, since hundreds of code units are invovled in this massive build project. I logged 341 errors during the cythonizing part of the compile run, and found 110 code units (C packages) which I was able to fix so that the recompile would have no warnings. The warnings were legitimate. There are 4 categories of these warnings. 1. Using an unitialized variable with an unknown value 2. Comparing signed and unsigned variables 3. Discarding a const specifier to a variable upon use elsewhere in the code 4. Coercing a pointer to a variable of the wrong type (or vice versa) I did speak to one knowledgable person about this, but my question is this a) do I submit 341 bug reports covering all the warnings? b) since 110 code units were affected do I file 110 bug reports for each code unit? b) do I submit just one bug report for each of the 4 categories above, thus just 4 bug reports? c) do I just list all the warning messages obtained from the massive build run so everyone can get some idea of the problems being faced? I did look at the C code and the pyx code generating it and definitely cython is the origination here of these issues. Since I am NOT yet familiar with cython from scratch, at the moment I am at a loss to write litte tiny programs illustrating the problem. What do you recommend? Randall -------------- next part -------------- An HTML attachment was scrubbed... URL: From stefan_ml at behnel.de Tue Jan 25 11:27:18 2022 From: stefan_ml at behnel.de (Stefan Behnel) Date: Tue, 25 Jan 2022 17:27:18 +0100 Subject: [Cython] question on submitting a possibly massive bug report In-Reply-To: References: Message-ID: website.reader via cython-devel schrieb am 25.01.22 um 01:09: > I am not familiar with Cython, but have spent a few weeks looking at compiler warnings posted when the mathematical package called "sage v9.4" is compiled, which takes several hours to build, since hundreds of code units are invovled in this massive build project. > > I logged 341 errors during the cythonizing part of the compile run, and found 110 code units (C packages) which I was able to fix so that the recompile would have no warnings. The warnings were legitimate. > > There are 4 categories of these warnings. > > 1. Using an unitialized variable with an unknown value > 2. Comparing signed and unsigned variables > 3. Discarding a const specifier to a variable upon use elsewhere in the code > 4. Coercing a pointer to a variable of the wrong type (or vice versa) > > I did speak to one knowledgable person about this, but my question is this > > a) do I submit 341 bug reports covering all the warnings? > b) since 110 code units were affected do I file 110 bug reports for each code unit? > b) do I submit just one bug report for each of the 4 categories above, thus just 4 bug reports? > c) do I just list all the warning messages obtained from the massive build run so everyone can get some idea of the problems being faced? > > I did look at the C code and the pyx code generating it and definitely cython is the origination here of these issues. > > Since I am NOT yet familiar with cython from scratch, at the moment I am at a loss to write litte tiny programs illustrating the problem. Cython is a code generator, so there probably are only a few places where a larger bunch of issues originate from. You already grouped them by type (1-4), and those likely belong to one cause (or a few related causes). Just open one issue for each of the four. Then please list a few source code examples in each, together with the C code that Cython generated for them, and the warning that the C compiler gave you. If we later find that not all warnings can be resolved this way, we'll see what we can do about the rest. Please make sure to provide the Cython version that you are using. The latest release is 3.0.0a10 (and the main development goes there), although there is a legacy stable version series 0.29.x that most projects are still using and where we will continue to fix bugs for another while. But new reports should best target 3.0 in order to avoid chasing zombies. Thanks, Stefan