* James Youngman wrote on Sun, Jun 19, 2011 at 11:17:22PM CEST:
> On Sun, Jun 19, 2011 at 7:49 AM, Ralf Wildenhues wrote:
> > * James Youngman wrote on Sun, Jun 19, 2011 at 12:57:01AM CEST:
> >> On Sat, Jun 18, 2011 at 11:24 PM, Karl Berry <k...@freefriends.org> wrote:
> >> >    I suspect that the most useful thing we can do in gnulib is define
> >> >    PATH_MAX to a non-constant expression on all platforms,
> >> >
> >> > And intentionally break loads of existing code?
> >> > I am highly doubtful that that is "useful"; "painful" sounds more
> >> > accurate :).
> >>
> >> I much prefer obvious breakage, in which problem code simply fails to
> >> compile, to subtle breakage where your code compiles on all the
> >> systems you have access to but still has subtle problems.
> >
> > Is it possible to define it to an expression which will cause a warning
> > if used in a way requiring it to be a constant expression?
> 
> ISO C requires an array bounds expression to be a constant-expression
> (in the circumstances, not a surprise) but many implementations don't
> produce a warning when some other kind of expression is used.

Yes, but that's not quite what I asked for.  I'm trying to get the
best of both worlds: have

  char cwd[PATH_MAX];

use VLAs with GCC on decent systems, but also let it warn that it's not
portable code.

Cheers,
Ralf

Reply via email to