"hello.c", line 18: remark #994-D: missing return statement at end of non-void function "main"
The compiler believes that the function should return a value, but it does not. If the function really is meant to return a value, attempting to use the return value of this function will result in undefined behavior, in which case the program is not a legal C program.
This usually happens for one of two reasons:
If the return value of the function is never used (or if the function never returns), it is harmless. If the return value is ever used, there is positively a bug in the user's function.