Re: [Chicken-hackers] noreturn clang
On Wed, Nov 06, 2013 at 10:40:18AM +0100, Jörg F. Wittenberger wrote: I used to compile with clang to avoid the endless list of warning: array subscript is above array bounds [-Warray-bounds] from gcc (4.6.1) Now it's replaced with an endless list of warning: function declared 'noreturn' should not return [-Winvalid-noreturn] from clang. (Besides that I often value compilation time.) Does anybody know how to make clang shut up on this one? A fix for this went in 2 weeks ago, as commit dc071fbae201f2b8db5539fd016c0d51be0bbe15. This ought to be available on master. AFAIK this hasn't hit the stability branch (yet). By the way, that array bounds GCC warning should've been fixed a while ago as well, way back in January there's commit 3ac5bf73c0bec0c5f230ac685e4a17d69a7ea382 which silences these warnings for clang. It should also silence them for GCC, I suppose. Of course, if these warnings are shown by GCC it might be better to investigate why, and attempt to actually fix them instead of working around it by using another compiler! Cheers, Peter -- http://www.more-magic.net ___ Chicken-hackers mailing list Chicken-hackers@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-hackers
Re: [Chicken-hackers] noreturn clang
On Wed, Nov 06, 2013 at 11:01:50AM +0100, Jörg F. Wittenberger wrote: Am 06.11.2013 10:48, schrieb Peter Bex: A fix for this went in 2 weeks ago, as commit dc071fbae201f2b8db5539fd016c0d51be0bbe15. This ought to be available on master. AFAIK this hasn't hit the stability branch (yet). Hm, according to git I'm sitting on master. Also this commit is obviously applied and the code is in chicken.h What version of clang are you using? Originally, this noreturn attribute was probably only used in GCC because clang didn't have support for it. I guess the newer version grew support and the feature test we're now using should only trigger for versions which support it at all. Of course, if these warnings are shown by GCC it might be better to investigate why, and attempt to actually fix them instead of working around it by using another compiler! Sure. Just a matter of priorities. I'm unpaid. :-/ I'm sad to admit: the other day I created a fresh file, which for a while did not exhibit the problem. After a while I did, so I was able to figure out which kind of Scheme code would result in such C code. But I forgot what it was. Sorry. Will have to redo that. That's always useful. Perhaps it had to do with a recompiled CHICKEN which had different compiler flags? Cheers, Peter -- http://www.more-magic.net ___ Chicken-hackers mailing list Chicken-hackers@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-hackers
Re: [Chicken-hackers] noreturn clang
On Wed, Nov 06, 2013 at 11:10:39AM +0100, Jörg F. Wittenberger wrote: Also this commit is obviously applied and the code is in chicken.h What version of clang are you using? Looks like version 2.9. I wrote this code testing with clang 3.3, so maybe the 3 major version only has support for it. If it's important to you, try upgrading to that version. Cheers, Peter -- http://www.more-magic.net ___ Chicken-hackers mailing list Chicken-hackers@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-hackers
Re: [Chicken-hackers] noreturn clang
Am 06.11.2013 11:14, schrieb Peter Bex: On Wed, Nov 06, 2013 at 11:10:39AM +0100, Jörg F. Wittenberger wrote: Also this commit is obviously applied and the code is in chicken.h What version of clang are you using? Looks like version 2.9. I wrote this code testing with clang 3.3, so maybe the 3 major version only has support for it. If it's important to you, try upgrading to that version. Appears that 3.0 does already honor the noreturn declaration. But now it complains about the array subscriptions as gcc did before... Cheers, Peter ___ Chicken-hackers mailing list Chicken-hackers@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-hackers
Re: [Chicken-hackers] noreturn clang
On Wed, Nov 06, 2013 at 02:35:20PM +0100, Jörg F. Wittenberger wrote: Appears that 3.0 does already honor the noreturn declaration. But now it complains about the array subscriptions as gcc did before... Can you provide a minimum set of steps which one needs to take in order to see this happening, using a clean clone of git master? AFAIK it's fixed and I don't see the messages here, so there must be something different between what you're doing and what I'm doing. Please remember to go through a bootstrap CHICKEN, as well, in order to absolutely eliminate most environmental differences. Cheers, Peter -- http://www.more-magic.net ___ Chicken-hackers mailing list Chicken-hackers@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-hackers
Re: [Chicken-hackers] noreturn clang
Am 06.11.2013 14:47, schrieb Peter Bex: On Wed, Nov 06, 2013 at 02:35:20PM +0100, Jörg F. Wittenberger wrote: Appears that 3.0 does already honor the noreturn declaration. But now it complains about the array subscriptions as gcc did before... Can you provide a minimum set of steps which one needs to take in order to see this happening, using a clean clone of git master? AFAIK it's fixed and I don't see the messages here, so there must be something different between what you're doing and what I'm doing. Please remember to go through a bootstrap CHICKEN, as well, in order to absolutely eliminate most environmental differences. I'm afraid I *have to* regret. Save yourself the details. It's about my machine, my time and financial budget and those real world duties, which I'm supposed to eventually complete. I'm going to get real, bad trouble if I invest more into chicken. Loosing today at the failed experiment to incorporate the loss of interrupt_reason was already too much at the moment. I'll try to figure these things out, once I'm under less pressure. Sorry. /Jörg ___ Chicken-hackers mailing list Chicken-hackers@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-hackers