Re:Tell HN: C Experts Panel – Ask us anything about C
by saagarjha on Tuesday April 14, 2020 @07:26PM
(#22872683)
What should happen if you reassign the object?
[ Parent
| on HN ]
Re:Tell HN: C Experts Panel – Ask us anything about C
by scythe on Wednesday April 15, 2020 @12:54AM
(#22874647)
What do you mean "reassign"?
You can't reassign the length variable since it's marked `const`. You should see something like "warning: assignment discards `const` qualifier from pointer target type" if you pass it to `realloc`, which tells you that you're breaking consistency (I guess this might be UB). You could write `vrealloc` to allow resizing such structs, which would probably be called like:
my_obj *tmp = vrealloc(obj, sizeof(obj), sizeof(obj->text), obj->n, newsize);