Thread overview |
---|
August 12, 2004 return statement bug 2 | ||||
---|---|---|---|---|
| ||||
A main() returning a void does not give the OS return value 0. Case in point: tst.d: void main() {} $ dmd tst.d (compiles) $ tst $ echo $? 3 $ I would expect 0 to be returned unless an error occured. Nick |
August 14, 2004 Re: return statement bug 2 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick | It's not really a bug. If you don't care about the exit status, you don't have to supply one (though it will then be garbage). "Nick" <Nick_member@pathlink.com> wrote in message news:cfg4j9$2cad$1@digitaldaemon.com... > A main() returning a void does not give the OS return value 0. Case in point: > > tst.d: > void main() {} > > $ dmd tst.d > (compiles) > $ tst > $ echo $? > 3 > $ > > I would expect 0 to be returned unless an error occured. > > Nick > > |
August 14, 2004 Re: return statement bug 2 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter | In article <cflklr$2j0e$1@digitaldaemon.com>, Walter says... > >It's not really a bug. If you don't care about the exit status, you don't have to supply one (though it will then be garbage). That's OK, then. I always thought the required return at end of main in C (or at least gcc) redundant, since I would return 0 in almost every case. Therefore I guess I thought the void was a replacement for the exact same behavior. But, as you say, if I actually need the return value for something I should supply it explicitly. Nick |
Copyright © 1999-2021 by the D Language Foundation