Thread (3 messages) flat view 3 messages, 2 authors, 2016-06-15

Re: [PATCH 1/2] sideband.c: Use xmalloc() instead of variable-sized arrays.

From: Johannes Sixt <hidden>
Date: 2016-06-15 22:44:03

Nicolas Pitre schrieb:
On Tue, 8 Jan 2008, Johannes Sixt wrote:
quoted
How come we got along with this not very portable construct for so long?
Probably because the array sizes were computed from the results of
strlen() of string constants.
Maybe because it isn't not so unportable anymore?  I doubt that 
compilers that don't know about automatic arrays would be smart enough 
to notice the variable was actually a constant due to the strlen() of a 
constant string and just do like if there wasn't any variable for the 
array size.
I just tried it with Visual Age 6, and got this:

    CC sideband.o
"sideband.c", line 22.18: 1506-195 (S) Integral constant expression with a
value greater than zero is required.
"sideband.c", line 62.51: 1506-195 (S) Integral constant expression with a
value greater than zero is required.
make: *** [sideband.o] Error 1

But before I got to this point I had to change all 'static inline' in
git-compat-util.h to plain 'static'. So this compiler is out of the game
anyway.

Having said that, I'd actually prefer to stay with variable-sized arrays
if they prove portable enough because we don't need the handful of free()s
on function exits. Junio, if you like I can resend patch 2/2 using
variable-sized arrays.

-- Hannes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help