Messages in this thread | | | Date | Sun, 12 Jan 2003 13:23:48 -0700 | From | yodaiken@fsmlabs ... | Subject | Re: any chance of 2.6.0-test*? |
| |
On Sun, Jan 12, 2003 at 03:18:38PM -0500, Valdis.Kletnieks@vt.edu wrote: > On Sun, 12 Jan 2003 14:59:57 EST, Rob Wilkens said: > > > In general, if you can structure your code properly, you should never > > need a goto, and if you don't need a goto you shouldn't use it. It's > > just "common sense" as I've always been taught. Unless you're > > intentionally trying to write code that's harder for others to read. > > Now, it's provable you never *NEED* a goto. On the other hand, *judicious* > use of goto can prevent code that is so cluttered with stuff of the form: > > if(...) { > ... > die_flag = 1; > if (!die _flag) {... > > Pretty soon, you have die_1_flag, die_2_flag, die_3_flag and so on, > rather than 3 or 4 "goto bail_now;". > > The real problem is that C doesn't have a good multi-level "break" construct.
longjump. Used with good effect in the plan9 code.
Probably takes more coordination than is possible in Linux and has marginal benefit, but it looks nice.
-- --------------------------------------------------------- Victor Yodaiken Finite State Machine Labs: The RTLinux Company. www.fsmlabs.com www.rtlinux.com 1+ 505 838 9109
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |