blob: d7fff14f953891933e7fe49353aa6a549ac39691 [file] [log] [blame]
/* PR middle-end/20739 */
/* { dg-do compile } */
/* { dg-options "-O" } */
/* We used to fail to compile this because gimplification dropped the
conversion that added the const qualifier to the sub-expression
involving baz, and then immediately noticed and reported its
absence. */
typedef struct
{
char chars[5];
}
baz_t;
extern baz_t * baz;
extern void foo (baz_t);
int
bar (const baz_t * ls)
{
foo (ls == 0 ? *(&baz[0]) : *ls);
}