If you turn on more warnings you will get a warning in Code::Blocks too.
warning: no return statement in function returning non-void [-Wreturn-type]
Here is what the standard says about leaving out the return statement. ยง6.6.3/2
Flowing off the end of a function is equivalent to a return with no value; this results in undefined behavior in a value-returning function.
Undefined behavior is something that you should always try to avoid. It means that there is no guarantees and anything can happen.
The main function is an exception. If you don't return anything from main() it will automatically return 0.
If you don't want welcome() to return anything you can change the return type to void and leave out the return statement. Now when I read what you wrote more carefully I think this is what you want.