I have a little bit strange situation. I am compiling on some device. If I compile in Release mode, e.g.
makeCore projectname release exe
All is fine. If I compile in debug mode:
makeCore projectname debug exe
I get following warning:
src/administration.c: In function 'SetIp':
src/administration.c:1409: warning: implicit declaration of function 'InputIp'
Q: Does this mean in the release mode it is safe to use my application?
Why is this behaviour? What to do? I am using the binary compiled in release mode, should I be worried?
Edit: Should I maybe first check out which C standard this compiler conforms to, if it is pre C89 then I should not worry because it is not undefined behaviour right?
Edit2: My ultimate question is if I am trigerring undefined behaviour and how to check whether I am or not trigerring undefined behaviour? I am not sure whether my compiler implements C89 or C90 etc.. Maybe I should ask vendors whether it is undefined behaviour what I did above?
UPDATE:
This is function signature:
s32 InputIp(s32 line, u8 * text, s32 otherline, u8 *IP, u8 coordx, s32 coordy);
This is how it is called:
s32 res = InputIp(someconstant, u8pointer, otherconstant, otheru8pointer, integer1, integer2);
final question: Since I get this warning in the first place, can I be sure I am using compiler which uses C89? Otherwise it would be error? Am I right?