Frama-C-discuss mailing list archives

This page gathers the archives of the old Frama-C-discuss archives, that was hosted by Inria's gforge before its demise at the end of 2020. To search for mails newer than September 2020, please visit the page of the new mailing list on Renater.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Frama-c-discuss] how padding are introduced by Frama-C

  • Subject: [Frama-c-discuss] how padding are introduced by Frama-C
  • From: stephane.duprat at (Stéphane Duprat)
  • Date: Mon, 07 Dec 2009 23:33:22 +0100


Here is an exemple where padding has a consequence on warnings.

These two structures differs only from the type of the first field.
typedef struct {
  int i;
  T_TAB t;
} T_S1;

typedef struct {
  char c;
  T_TAB t;
} T_S2;

The second one cause problem when used as in the attached exemple and I
don't know why.
Access to the field t in a loop causes a warning in the second case and
not in the first one.

test3.c:32:[kernel] warning: accessing uninitialized left-value *((char
*)(tV2[id].t) + i): assert(TODO)

Could someone explain me what happens.

thanks in advance,


-------------- next part --------------
An HTML attachment was scrubbed...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test3.c
Type: text/x-csrc
Size: 466 bytes
Desc: not available
Url :