In message: <20090430233648.ga95...@keira.kiwi-computer.com>
            "Rick C. Petty" <rick-freebsd2...@kiwi-computer.com> writes:
: On Thu, Apr 30, 2009 at 09:02:26AM -0600, M. Warner Losh wrote:
: > 
: > This is the biggest one, and I think it may be too soon.  Also, we
: > need to be careful on the initialization side of things because we
: > currently have a lot of code that looks like:
: > 
: > 
: >     struct foo *fp;
: >     struct bar *bp;
: > 
: >     fp = get_foo();
: >     if (!fp) return;
: >     bp = fp->bp;
: > 
: > this can't easily be translated to the more natural:
: > 
: >     struct foo *fp = get_foo();
: >     struct bar *bp = fp->bp;
: > 
: > since really you'd want to write:
: > 
: >     struct foo *fp = get_foo();
: >     if (!fp) return;
: >     struct bar *bp = fp->bp;
: > 
: > which isn't legal in 'C'.
: 
: I thought we were talking about C99, in which case this is perfectly legal.
: I certainly use it all the time in my C99 code.

Hmmm, looks like that was added.  That's ugly as C++...

: And I thought this was the point of this discussion, to be able to declare
: variables when you first use them.

That's one of the proposed changes, which I think is a mistake and
would cause the most code churn.  And it isn't one of the items that's
being discussed: only moving variables into inner scopes is on the
table...

Warner
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"

Reply via email to