mirror of
https://github.com/stedolan/jq.git
synced 2024-05-11 05:55:39 +00:00
Use __attribute__ __printf__ with GCC
This commit is contained in:
@@ -802,11 +802,11 @@ jv jq_format_error(jv msg) {
|
||||
|
||||
if (jv_get_kind(msg) != JV_KIND_INVALID) {
|
||||
if (jv_get_kind(msg) == JV_KIND_STRING)
|
||||
return jv_string_fmt("jq: error: %s", msg);
|
||||
return jv_string_fmt("jq: error: %s", jv_string_value(msg));
|
||||
|
||||
msg = jv_dump_string(msg, JV_PRINT_INVALID);
|
||||
if (jv_get_kind(msg) == JV_KIND_STRING)
|
||||
return jv_string_fmt("jq: error: %s", msg);
|
||||
return jv_string_fmt("jq: error: %s", jv_string_value(msg));
|
||||
return jq_format_error(jv_null()); // ENOMEM
|
||||
}
|
||||
|
||||
|
||||
11
jv.h
11
jv.h
@@ -91,6 +91,13 @@ jv jv_array_indexes(jv, jv);
|
||||
#define JV_ARRAY(...) \
|
||||
JV_ARRAY_IDX(__VA_ARGS__, JV_ARRAY_7, JV_ARRAY_6, JV_ARRAY_5, JV_ARRAY_4, JV_ARRAY_3, JV_ARRAY_2, JV_ARRAY_1)(__VA_ARGS__)
|
||||
|
||||
#ifdef __GNUC__
|
||||
#define JV_PRINTF_LIKE(fmt_arg_num, args_num) \
|
||||
__attribute__ ((__format__( __printf__, fmt_arg_num, args_num)))
|
||||
#define JV_VPRINTF_LIKE(fmt_arg_num) \
|
||||
__attribute__ ((__format__( __printf__, fmt_arg_num, 0)))
|
||||
#endif
|
||||
|
||||
|
||||
jv jv_string(const char*);
|
||||
jv jv_string_sized(const char*, int);
|
||||
@@ -102,8 +109,8 @@ const char* jv_string_value(jv);
|
||||
jv jv_string_indexes(jv j, jv k);
|
||||
jv jv_string_slice(jv j, int start, int end);
|
||||
jv jv_string_concat(jv, jv);
|
||||
jv jv_string_vfmt(const char*, va_list);
|
||||
jv jv_string_fmt(const char*, ...);
|
||||
jv jv_string_vfmt(const char*, va_list) JV_VPRINTF_LIKE(1);
|
||||
jv jv_string_fmt(const char*, ...) JV_PRINTF_LIKE(1, 2);
|
||||
jv jv_string_append_codepoint(jv a, uint32_t c);
|
||||
jv jv_string_append_buf(jv a, const char* buf, int len);
|
||||
jv jv_string_append_str(jv a, const char* str);
|
||||
|
||||
2
main.c
2
main.c
@@ -398,7 +398,7 @@ int main(int argc, char* argv[]) {
|
||||
if (strchr(JQ_VERSION, '-') == NULL)
|
||||
jq_set_attr(jq, jv_string("VERSION_DIR"), jv_string(JQ_VERSION));
|
||||
else
|
||||
jq_set_attr(jq, jv_string("VERSION_DIR"), jv_string_fmt("%.*s-master", strchr(JQ_VERSION, '-') - JQ_VERSION, JQ_VERSION));
|
||||
jq_set_attr(jq, jv_string("VERSION_DIR"), jv_string_fmt("%.*s-master", (int)(strchr(JQ_VERSION, '-') - JQ_VERSION), JQ_VERSION));
|
||||
|
||||
#if (!defined(WIN32) && defined(HAVE_ISATTY)) || defined(HAVE__ISATTY)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user