aboutsummaryrefslogtreecommitdiffstats
path: root/libavutil
diff options
context:
space:
mode:
authorGanesh Ajjanagadde <gajjanagadde@gmail.com>2015-10-05 01:45:12 -0400
committerMichael Niedermayer <michael@niedermayer.cc>2015-10-05 19:30:20 +0200
commit1d4af04adf99301e21d7364d72f5570f5219083a (patch)
treeb9a530f93e8319bb754096b7e1a3be61e1f9b308 /libavutil
parent6f1ccca4ae3b93b6a2a820a7a0e72081ab35767c (diff)
downloadffmpeg-1d4af04adf99301e21d7364d72f5570f5219083a.tar.gz
avutil/attributes: add av_warn_unused_result
GCC 3.4 introduced an attribute warn_unused_result to warn when a programmer discards the return value. Applying this judiciously across the codebase can help in fixing a lot of problems. At a high level, functions which return error codes should always be checked. More concretely, consider the functions ff_add_format and the like in avfilter/formats.h. A quick examination shows that a large portion of libavfilter fails to handle the associated errors, usually AVERROR(ENOMEM). The above example was where I observed the utility of this, but it should be useful in many places across the code base. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavutil')
-rw-r--r--libavutil/attributes.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/libavutil/attributes.h b/libavutil/attributes.h
index 50e8eb37b1..5c6b9deecb 100644
--- a/libavutil/attributes.h
+++ b/libavutil/attributes.h
@@ -52,6 +52,12 @@
#endif
#endif
+#if AV_GCC_VERSION_AT_LEAST(3,4)
+# define av_warn_unused_result __attribute__((warn_unused_result))
+#else
+# define av_warn_unused_result
+#endif
+
#if AV_GCC_VERSION_AT_LEAST(3,1)
# define av_noinline __attribute__((noinline))
#elif defined(_MSC_VER)