On Tue, 6 Jul 2004, Bruce Momjian wrote:

> Tom Lane wrote:
> > Andreas Pflug <[EMAIL PROTECTED]> writes:
> > > Joe Conway wrote:
> > >> 2) This allocation size was a bit ambigous and I think based on a once
> > >> longer tablespace directory name:
> >
> > > This size calculation originated (copy/paste) from
> > > commands/tablespace.c,
> >
> > Yeah --- Bruce did not adjust the string length calculations when he
> > editorialized on the directory name.  I'd been meaning to go back and
> > make them match.
> >
> > > should be clarified there too (and "pg_tblspc" is
> > > hardcoded in strings, could be extracted to a macro definition).
> >
> > [ shrug... ]  The name is not going to change again.  I have never cared
> > for the practice of writing strlen("foo") as if it were a compile-time
> > constant.  But certainly it would be entirely pointless to define such a
> > macro and then use it in only one place.
>
> I think with gcc strlen("foo") is a compile-time constant.  At least I
> remember that as a gcc optimization.  What do you prefer?
> sizeof("foo")-1?  Certainly +3 is poorly documented, no?

You're right about the gcc optimisation:

        int i = strlen("foo");
 8048304:       c7 45 fc 03 00 00 00    movl   $0x3,0xfffffffc(%ebp)

It does look messy thought. Can't this be cleared by a comment?

Thanks,

Gavin

---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster

Reply via email to