> On Aug 4, 2023, at 3:38 AM, Kees Cook <keesc...@chromium.org> wrote: > > On Thu, Aug 03, 2023 at 09:31:24PM +0000, Qing Zhao wrote: >> So, the basic question is: >> >> Given the following: >> >> struct fix { >> int others; >> int array[10]; >> } >> >> extern struct fix * alloc_buf (); >> >> int main () >> { >> struct fix *p = alloc_buf (); >> __builtin_object_size(p->array,0) == ? >> } >> >> Given p->array, can the compiler determine that p points to an object that >> has TYPE struct fix? >> >> If the answer is YES, then the current__builtin_object_size algorithm can be >> improved to determine __builtin_object_size(p->array, 0) with the TYPE of >> the struct fix. > > I think it is fine to leave __bos(..., 0) as-is. From the Linux kernel's > use of __bos, we are almost exclusively only interesting the mode 1, not > node 0. :)
Okay, that’s good to know. Qing > > -- > Kees Cook