[En-Nut-Discussion] GCC and main
nategoose at gmail.com
Tue Jan 26 19:44:40 CET 2010
There are several possible differences between main() and other functions.
Some come from the libc used and others from the compiler. For instance,
it's not uncommon for a compiler to generate stack alignment code in main()
on targets that prefer 2, 4, or 8 byte alignment, but not in other functions.
Personally I dislike for main to be anything except:
int main(int argc, const char * argv)
int main(int argc, const char * argv, const char * envp)
Which is not what Nut wants main to be.
Some compilers will bark at you for defining main with parameters that
from this (well, signed and const could be changed).
I don't use the
#define main NutAppMain
in my code and just call it NutAppMain.
More information about the En-Nut-Discussion