mirror of git://gcc.gnu.org/git/gcc.git
re PR c/77946 (-Wimplicit-fallthrough=1 ICE: tree check: expected tree that contains ‘decl with visibility’ structure, have ‘label_decl’)
PR c/77946 * tree.h (FALLTHROUGH_LABEL_P): Use private_flag instead of public_flag. * varasm.c (default_binds_local_p_3): Formatting fix. * c-c++-common/Wimplicit-fallthrough-34.c: New test. From-SVN: r241094
This commit is contained in:
parent
5579170b40
commit
1a1ab05e90
|
|
@ -1,3 +1,10 @@
|
||||||
|
2016-10-13 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
|
PR c/77946
|
||||||
|
* tree.h (FALLTHROUGH_LABEL_P): Use private_flag instead of
|
||||||
|
public_flag.
|
||||||
|
* varasm.c (default_binds_local_p_3): Formatting fix.
|
||||||
|
|
||||||
2016-10-13 Bin Cheng <bin.cheng@arm.com>
|
2016-10-13 Bin Cheng <bin.cheng@arm.com>
|
||||||
|
|
||||||
* tree-vect-loop-manip.c (slpeel_can_duplicate_loop_p): Fix code
|
* tree-vect-loop-manip.c (slpeel_can_duplicate_loop_p): Fix code
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,8 @@
|
||||||
|
2016-10-13 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
|
PR c/77946
|
||||||
|
* c-c++-common/Wimplicit-fallthrough-34.c: New test.
|
||||||
|
|
||||||
2016-10-13 Martin Liska <mliska@suse.cz>
|
2016-10-13 Martin Liska <mliska@suse.cz>
|
||||||
|
|
||||||
PR tree-optimization/77943
|
PR tree-optimization/77943
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
/* PR c/77946 */
|
||||||
|
/* { dg-do compile } */
|
||||||
|
/* { dg-options "-Wimplicit-fallthrough" } */
|
||||||
|
|
||||||
|
void
|
||||||
|
foo (void)
|
||||||
|
{
|
||||||
|
static void *p = &&lab;
|
||||||
|
goto *p;
|
||||||
|
/*FALLTHRU*/
|
||||||
|
lab:;
|
||||||
|
}
|
||||||
|
|
@ -777,7 +777,7 @@ extern void omp_clause_range_check_failed (const_tree, const char *, int,
|
||||||
/* Whether a case or a user-defined label is allowed to fall through to.
|
/* Whether a case or a user-defined label is allowed to fall through to.
|
||||||
This is used to implement -Wimplicit-fallthrough. */
|
This is used to implement -Wimplicit-fallthrough. */
|
||||||
#define FALLTHROUGH_LABEL_P(NODE) \
|
#define FALLTHROUGH_LABEL_P(NODE) \
|
||||||
(LABEL_DECL_CHECK (NODE)->base.public_flag)
|
(LABEL_DECL_CHECK (NODE)->base.private_flag)
|
||||||
|
|
||||||
/* Nonzero means this expression is volatile in the C sense:
|
/* Nonzero means this expression is volatile in the C sense:
|
||||||
its address should be of type `volatile WHATEVER *'.
|
its address should be of type `volatile WHATEVER *'.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue