This example used to work (with C) in GCC 14 before the warning for different pointer types without a cast was changed to an error. The fix is to make the q variable `int*` rather than the current `char*`. This also fixes the example for C++ too.
Pushed as obvious after doing a `make html`. gcc/ChangeLog: * doc/extend.texi (__builtin_object_size): Fix example. Signed-off-by: Andrew Pinski <andrew.pin...@oss.qualcomm.com> --- gcc/doc/extend.texi | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index cc9005439a4..38229583403 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -17252,7 +17252,8 @@ is computed. @smallexample struct V @{ char buf1[10]; int b; char buf2[10]; @} var; -char *p = &var.buf1[1], *q = &var.b; +char *p = &var.buf1[1]; +int *q = &var.b; /* Here the object p points to is var. */ assert (__builtin_object_size (p, 0) == sizeof (var) - 1); -- 2.43.0