This is wrong: return value should just be checked instead. There is no reason to «silence» warnings this way — may just disable them altogether :-)