if (!stream) return 0;
#endif // _di_level_1_parameter_checking_
- return private_fl_print_format_convert(string, stream, ap, status);
+ if (status) {
+ return private_fl_print_format_convert(string, stream, ap, status);
+ }
+
+ f_status_t status_local = F_none;
+
+ return private_fl_print_format_convert(string, stream, ap, &status_local);
}
#endif // _di_fl_print_format_convert_
* @param ap
* The variable arguments list.
* @param status
- * The status is stored here rather then via the return.
- *
- * @return
- * This returns a string at either the start position (if nothing done or an error occurred) or at the character last processed.
- * The caller is expected to increment past this if they wish to continue processing the string.
- *
- * The status parameter will be set as follows:
+ * (optional) Set to NULL to not use.
*
+ * The status parameter will be set as follows on return:
* F_none on success.
*
* F_output (with error bit) on failure to print to the output file.
* Errors (with error bit) from: f_print_safely().
* Errors (with error bit) from: f_print_terminated().
*
+ * @return
+ * This returns a string at either the start position (if nothing done or an error occurred) or at the character last processed.
+ * The caller is expected to increment past this if they wish to continue processing the string.
+ *
* @see fputc_unlocked()
*
* @see f_conversion_number_signed_print()