https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69567

--- Comment #2 from Martin Sebor <msebor at gcc dot gnu.org> ---
In fact, the test case can be simplified even further to this:

typedef __UINT16_TYPE__ uint16_t;
typedef __UINT32_TYPE__ uint32_t;
typedef __INT64_TYPE__  int64_t;
typedef __UINT64_TYPE__ uint64_t;

static uint32_t a;
static uint32_t *aa = &a;

static int64_t b;
static int64_t *bb = &b;

static uint64_t c;

int main(void)
{
  c |= (uint16_t)*aa <= *bb;

  if (c != 1)
    __builtin_abort ();
}

Reply via email to