+static const format_spec_t builtin_table[] = {
+ { "printf", FORMAT_PRINTF, 0, 1 },
+ { "wprintf", FORMAT_PRINTF, 0, 1 },
+ { "sprintf", FORMAT_PRINTF, 1, 2 },
+ { "swprintf", FORMAT_PRINTF, 1, 2 },
+ { "snprintf", FORMAT_PRINTF, 2, 3 },
+ { "snwprintf", FORMAT_PRINTF, 2, 3 },
+ { "fprintf", FORMAT_PRINTF, 1, 2 },
+ { "fwprintf", FORMAT_PRINTF, 1, 2 },
+ { "snwprintf", FORMAT_PRINTF, 2, 3 },
+ { "snwprintf", FORMAT_PRINTF, 2, 3 },
+
+ { "scanf", FORMAT_SCANF, 0, 1 },
+ { "wscanf", FORMAT_SCANF, 0, 1 },
+ { "sscanf", FORMAT_SCANF, 1, 2 },
+ { "swscanf", FORMAT_SCANF, 1, 2 },
+ { "fscanf", FORMAT_SCANF, 1, 2 },
+ { "fwscanf", FORMAT_SCANF, 1, 2 },
+
+ { "strftime", FORMAT_STRFTIME, 3, 4 },
+ { "wcstrftime", FORMAT_STRFTIME, 3, 4 },
+
+ { "strfmon", FORMAT_STRFMON, 3, 4 },
+
+ /* MS extensions */
+ { "_snprintf", FORMAT_PRINTF, 2, 3 },
+ { "_snwprintf", FORMAT_PRINTF, 2, 3 },
+ { "_scrintf", FORMAT_PRINTF, 0, 1 },
+ { "_scwprintf", FORMAT_PRINTF, 0, 1 },
+ { "printf_s", FORMAT_PRINTF, 0, 1 },
+ { "wprintf_s", FORMAT_PRINTF, 0, 1 },
+ { "sprintf_s", FORMAT_PRINTF, 3, 4 },
+ { "swprintf_s", FORMAT_PRINTF, 3, 4 },
+ { "fprintf_s", FORMAT_PRINTF, 1, 2 },
+ { "fwprintf_s", FORMAT_PRINTF, 1, 2 },
+ { "_sprintf_l", FORMAT_PRINTF, 1, 3 },
+ { "_swprintf_l", FORMAT_PRINTF, 1, 3 },
+ { "_printf_l", FORMAT_PRINTF, 0, 2 },
+ { "_wprintf_l", FORMAT_PRINTF, 0, 2 },
+ { "_fprintf_l", FORMAT_PRINTF, 1, 3 },
+ { "_fwprintf_l", FORMAT_PRINTF, 1, 3 },
+ { "_printf_s_l", FORMAT_PRINTF, 0, 2 },
+ { "_wprintf_s_l", FORMAT_PRINTF, 0, 2 },
+ { "_sprintf_s_l", FORMAT_PRINTF, 3, 5 },
+ { "_swprintf_s_l", FORMAT_PRINTF, 3, 5 },
+ { "_fprintf_s_l", FORMAT_PRINTF, 1, 3 },
+ { "_fwprintf_s_l", FORMAT_PRINTF, 1, 3 },
+};
+