This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/59338] New: error: position plus size exceeds size of referenced object in BIT_FIELD_REF


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59338

            Bug ID: 59338
           Summary: error: position plus size exceeds size of referenced
                    object in BIT_FIELD_REF
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jan.smets@alcatel-lucent.com

minimal.i: In function 'test':
minimal.i:20:6: error: position plus size exceeds size of referenced object in
BIT_FIELD_REF
 void test(void)
      ^
BIT_FIELD_REF <*qResp, 8, 32>
minimal.i:23:28: note: in statement
     if (qResp->u.l[0].More == 0)
                            ^
D.1802 = BIT_FIELD_REF <*qResp, 8, 32>;
minimal.i:20:6: internal compiler error: verify_gimple failed
 void test(void)
      ^


typedef enum
{
    XYZZY,
} enumType;

typedef struct
{
    unsigned char More : 1;
} tResp;

typedef struct
{
    enumType QueryType;
    union
        {
        tResp l[0];
        } u;
} tQResp;

void test(void)
{
    tQResp *qResp = (0);
    if (qResp->u.l[0].More == 0)
        return;
}


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]