public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/49859] New: gcc could warn about statements between "switch" and first "case"
@ 2011-07-27 1:15 wkoszek at gmail dot com
2011-07-27 1:16 ` [Bug c/49859] " wkoszek at gmail dot com
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: wkoszek at gmail dot com @ 2011-07-27 1:15 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49859
Summary: gcc could warn about statements between "switch" and
first "case"
Product: gcc
Version: 4.5.2
Status: UNCONFIRMED
Severity: minor
Priority: P3
Component: c
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: wkoszek@gmail.com
Created attachment 24838
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24838
Sample source code.
wkoszek@wkoszek:~/p/switch$ cat switch.c
#include <stdio.h>
int
main(int argc, char **argv)
{
int type;
type = 123;
switch (type) {
printf("SOMETHING\n");
case 1:
printf("1\n");
break;
case 2:
printf("2\n");
break;
default:
printf("default\n");
return 1;
}
return 0;
}
wkoszek@wkoszek:~/p/switch$ gcc -pedantic -Wall -Wunused -Wunreachable-code -c
switch.c
wkoszek@wkoszek:~/p/switch$ clang -pedantic -Wall -Wunused -Wunreachable-code
-c switch.c
switch.c:10:3: warning: will never be executed [-Wunreachable-code]
printf("SOMETHING\n");
^~~~~~~~~~~~~~~~~~~~~
1 warning generated.
wkoszek@wkoszek:~/p/switch$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/i386-linux-gnu/gcc/i686-linux-gnu/4.5.2/lto-wrapper
Target: i686-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro
4.5.2-8ubuntu4' --with-bugurl=file:///usr/share/doc/gcc-4.5/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr
--program-suffix=-4.5 --enable-shared --enable-multiarch
--with-multiarch-defaults=i386-linux-gnu --enable-linker-build-id
--with-system-zlib --libexecdir=/usr/lib/i386-linux-gnu
--without-included-gettext --enable-threads=posix
--with-gxx-include-dir=/usr/include/c++/4.5 --libdir=/usr/lib/i386-linux-gnu
--enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug
--enable-libstdcxx-time=yes --enable-plugin --enable-gold --enable-ld=default
--with-plugin-ld=ld.gold --enable-objc-gc --enable-targets=all --disable-werror
--with-arch-32=i686 --with-tune=generic --enable-checking=release
--build=i686-linux-gnu --host=i686-linux-gnu --target=i686-linux-gnu
Thread model: posix
gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4)
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug c/49859] gcc could warn about statements between "switch" and first "case"
2011-07-27 1:15 [Bug c/49859] New: gcc could warn about statements between "switch" and first "case" wkoszek at gmail dot com
@ 2011-07-27 1:16 ` wkoszek at gmail dot com
2011-07-27 1:22 ` pinskia at gcc dot gnu.org
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: wkoszek at gmail dot com @ 2011-07-27 1:16 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49859
--- Comment #1 from Wojciech Koszek <wkoszek at gmail dot com> 2011-07-27 01:16:25 UTC ---
I'd expect GCC to warn me about this case, since it's very likely an error.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug c/49859] gcc could warn about statements between "switch" and first "case"
2011-07-27 1:15 [Bug c/49859] New: gcc could warn about statements between "switch" and first "case" wkoszek at gmail dot com
2011-07-27 1:16 ` [Bug c/49859] " wkoszek at gmail dot com
@ 2011-07-27 1:22 ` pinskia at gcc dot gnu.org
2011-07-27 1:28 ` wkoszek at gmail dot com
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: pinskia at gcc dot gnu.org @ 2011-07-27 1:22 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49859
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> 2011-07-27 01:22:05 UTC ---
-Wunreachable-code support was removed because it dependent on optimization and
caused some "false positives" (well they are not false positives in the sense
they were unreachable code but rather the code compiled with some optimization
was a truly unreachable but only with inlining and such).
Also does clang warn about Duff's loops?
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug c/49859] gcc could warn about statements between "switch" and first "case"
2011-07-27 1:15 [Bug c/49859] New: gcc could warn about statements between "switch" and first "case" wkoszek at gmail dot com
2011-07-27 1:16 ` [Bug c/49859] " wkoszek at gmail dot com
2011-07-27 1:22 ` pinskia at gcc dot gnu.org
@ 2011-07-27 1:28 ` wkoszek at gmail dot com
2011-07-27 10:07 ` rguenth at gcc dot gnu.org
2014-09-23 15:24 ` manu at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: wkoszek at gmail dot com @ 2011-07-27 1:28 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49859
--- Comment #3 from Wojciech Koszek <wkoszek at gmail dot com> 2011-07-27 01:28:28 UTC ---
Looks like GCC and Clang both agree on Duff's stuff:
wkoszek@wkoszek:~/p/duff$ cat duff.c
#include <stdio.h>
void
duff(to, from, count)
register short *to, *from;
register int count;
{
register int n=(count+7)/8;
switch(count%8){
case 0: do{ *to = *from++;
case 7: *to = *from++;
case 6: *to = *from++;
case 5: *to = *from++;
case 4: *to = *from++;
case 3: *to = *from++;
case 2: *to = *from++;
case 1: *to = *from++;
}while(--n>0);
}
}
int
main(int argc, char **argv)
{
short *dummy = NULL;
(void)argc;
(void)argv;
duff(dummy, dummy, 123);
return 0;
}
wkoszek@wkoszek:~/p/duff$ gcc -Wall -pedantic -Wunreachable-code -c duff.c
wkoszek@wkoszek:~/p/duff$ clang -Wall -pedantic -Wunreachable-code -c duff.c
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug c/49859] gcc could warn about statements between "switch" and first "case"
2011-07-27 1:15 [Bug c/49859] New: gcc could warn about statements between "switch" and first "case" wkoszek at gmail dot com
` (2 preceding siblings ...)
2011-07-27 1:28 ` wkoszek at gmail dot com
@ 2011-07-27 10:07 ` rguenth at gcc dot gnu.org
2014-09-23 15:24 ` manu at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-07-27 10:07 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49859
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2011.07.27 10:07:14
Ever Confirmed|0 |1
Severity|minor |enhancement
--- Comment #4 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-07-27 10:07:14 UTC ---
Confirmed.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug c/49859] gcc could warn about statements between "switch" and first "case"
2011-07-27 1:15 [Bug c/49859] New: gcc could warn about statements between "switch" and first "case" wkoszek at gmail dot com
` (3 preceding siblings ...)
2011-07-27 10:07 ` rguenth at gcc dot gnu.org
@ 2014-09-23 15:24 ` manu at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: manu at gcc dot gnu.org @ 2014-09-23 15:24 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49859
Manuel López-Ibáñez <manu at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |manu at gcc dot gnu.org
--- Comment #5 from Manuel López-Ibáñez <manu at gcc dot gnu.org> ---
For sure we do not need the old -Wunreachable here. Just when parsing a switch
block, anything found before the first case is basically unreachable, no?
(Why the standard does not consider this an error?)
>From gcc-bugs-return-462349-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Sep 23 15:26:33 2014
Return-Path: <gcc-bugs-return-462349-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 23265 invoked by alias); 23 Sep 2014 15:26:33 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 23200 invoked by uid 55); 23 Sep 2014 15:26:29 -0000
From: "jakub at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/63331] Fortran -fcompare-debug issues
Date: Tue, 23 Sep 2014 15:26:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: fortran
X-Bugzilla-Version: 5.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: jakub at gcc dot gnu.org
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-63331-4-UoO6rtAoO2@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-63331-4@http.gcc.gnu.org/bugzilla/>
References: <bug-63331-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-09/txt/msg02183.txt.bz2
Content-length: 592
https://gcc.gnu.org/bugzilla/show_bug.cgi?idc331
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Tue Sep 23 15:25:55 2014
New Revision: 215516
URL: https://gcc.gnu.org/viewcvs?rev!5516&root=gcc&view=rev
Log:
PR fortran/63331
* trans-types.c (gfc_get_array_descr_info): Build DEBUG_EXPR_DECL
instead of VAR_DECL for base_decl.
* gfortran.dg/pr63331.f90: New test.
Added:
trunk/gcc/testsuite/gfortran.dg/pr63331.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/trans-types.c
trunk/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2014-09-23 15:24 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-27 1:15 [Bug c/49859] New: gcc could warn about statements between "switch" and first "case" wkoszek at gmail dot com
2011-07-27 1:16 ` [Bug c/49859] " wkoszek at gmail dot com
2011-07-27 1:22 ` pinskia at gcc dot gnu.org
2011-07-27 1:28 ` wkoszek at gmail dot com
2011-07-27 10:07 ` rguenth at gcc dot gnu.org
2014-09-23 15:24 ` manu at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).