Add FUNC_WARN_UNUSED_RESULT macro to mark functions whose result should not be ignored