Three parameter mains are not ANSI C. It's an extension that most compilers support.
BTW, you're better off whining over on MVS-OE. The C compile devs hang out on that list. > On 18 Sep 2014, at 4:29 am, John McKown <[email protected]> wrote: > > OK, I've run across yet another thing to "whine" about. The IBM C > compiler, tested on z/OS 2.1, does not support a "three parameter" > main() function. What I mean is that > > int main(int argc, char *argv[]) works properly, but > int main(int argc, char *argv[], char *env[]) does not initialize the > env parameter properly. Oh, it has "something" in it. But not anything > useful. I checked the UNIX documentation on exec() and _it_ supports > sending the environment array pointer. Seems really weird to me. > Luckily, I can easily scan the environment via the extern char > **environ variable which is properly initialized. I am quite > disappointed with IBM. On the plus side, the generated code looks > pretty good. > > -- > There is nothing more pleasant than traveling and meeting new people! > Genghis Khan > > Maranatha! <>< > John McKown > > ---------------------------------------------------------------------- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
