mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-04 12:12:48 +00:00
Detect if the installed gcc version supports the warn_unused_result attribute.
Reported by mvanbaak via IRC -dev. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@123988 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -441,6 +441,7 @@ AST_GCC_ATTRIBUTE(unused)
|
|||||||
AST_GCC_ATTRIBUTE(always_inline)
|
AST_GCC_ATTRIBUTE(always_inline)
|
||||||
AST_GCC_ATTRIBUTE(deprecated)
|
AST_GCC_ATTRIBUTE(deprecated)
|
||||||
AST_GCC_ATTRIBUTE(sentinel)
|
AST_GCC_ATTRIBUTE(sentinel)
|
||||||
|
AST_GCC_ATTRIBUTE(warn_unused_result)
|
||||||
|
|
||||||
AC_MSG_CHECKING(for -ffunction-sections support)
|
AC_MSG_CHECKING(for -ffunction-sections support)
|
||||||
saved_CFLAGS="${CFLAGS}"
|
saved_CFLAGS="${CFLAGS}"
|
||||||
|
@@ -113,6 +113,10 @@
|
|||||||
/* Define to 1 if your GCC C compiler supports the 'unused' attribute. */
|
/* Define to 1 if your GCC C compiler supports the 'unused' attribute. */
|
||||||
#undef HAVE_ATTRIBUTE_unused
|
#undef HAVE_ATTRIBUTE_unused
|
||||||
|
|
||||||
|
/* Define to 1 if your GCC C compiler supports the 'warn_unused_result'
|
||||||
|
attribute. */
|
||||||
|
#undef HAVE_ATTRIBUTE_warn_unused_result
|
||||||
|
|
||||||
/* Define this to indicate the ${BKTR_DESCRIP} library */
|
/* Define this to indicate the ${BKTR_DESCRIP} library */
|
||||||
#undef HAVE_BKTR
|
#undef HAVE_BKTR
|
||||||
|
|
||||||
|
@@ -59,4 +59,10 @@
|
|||||||
#define attribute_sentinel
|
#define attribute_sentinel
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef HAVE_ATTRIBUTE_warn_unused_result
|
||||||
|
#define attribute_warn_unused_result __attribute__((warn_unused_result))
|
||||||
|
#else
|
||||||
|
#define attribute_warn_unused_result
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* _ASTERISK_COMPILER_H */
|
#endif /* _ASTERISK_COMPILER_H */
|
||||||
|
@@ -83,8 +83,8 @@ void __ast_verbose(const char *file, int line, const char *func, const char *fmt
|
|||||||
void ast_child_verbose(int level, const char *fmt, ...)
|
void ast_child_verbose(int level, const char *fmt, ...)
|
||||||
__attribute__ ((format (printf, 2, 3)));
|
__attribute__ ((format (printf, 2, 3)));
|
||||||
|
|
||||||
int ast_register_verbose(void (*verboser)(const char *string)) __attribute__((warn_unused_result));
|
int ast_register_verbose(void (*verboser)(const char *string)) attribute_warn_unused_result;
|
||||||
int ast_unregister_verbose(void (*verboser)(const char *string)) __attribute__((warn_unused_result));
|
int ast_unregister_verbose(void (*verboser)(const char *string)) attribute_warn_unused_result;
|
||||||
|
|
||||||
void ast_console_puts(const char *string);
|
void ast_console_puts(const char *string);
|
||||||
|
|
||||||
|
@@ -149,7 +149,7 @@ char *ast_sched_report(struct sched_context *con, char *buf, int bufsiz, struct
|
|||||||
* \param data data to pass to the callback
|
* \param data data to pass to the callback
|
||||||
* \return Returns a schedule item ID on success, -1 on failure
|
* \return Returns a schedule item ID on success, -1 on failure
|
||||||
*/
|
*/
|
||||||
int ast_sched_add(struct sched_context *con, int when, ast_sched_cb callback, const void *data) __attribute__((warn_unused_result));
|
int ast_sched_add(struct sched_context *con, int when, ast_sched_cb callback, const void *data) attribute_warn_unused_result;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief replace a scheduler entry
|
* \brief replace a scheduler entry
|
||||||
@@ -162,7 +162,7 @@ int ast_sched_add(struct sched_context *con, int when, ast_sched_cb callback, co
|
|||||||
* \retval -1 failure
|
* \retval -1 failure
|
||||||
* \retval otherwise, returns scheduled item ID
|
* \retval otherwise, returns scheduled item ID
|
||||||
*/
|
*/
|
||||||
int ast_sched_replace(int old_id, struct sched_context *con, int when, ast_sched_cb callback, const void *data) __attribute__((warn_unused_result));
|
int ast_sched_replace(int old_id, struct sched_context *con, int when, ast_sched_cb callback, const void *data) attribute_warn_unused_result;
|
||||||
|
|
||||||
/*!Adds a scheduled event with rescheduling support
|
/*!Adds a scheduled event with rescheduling support
|
||||||
* \param con Scheduler context to add
|
* \param con Scheduler context to add
|
||||||
@@ -177,7 +177,7 @@ int ast_sched_replace(int old_id, struct sched_context *con, int when, ast_sched
|
|||||||
* If callback returns 0, no further events will be re-scheduled
|
* If callback returns 0, no further events will be re-scheduled
|
||||||
* \return Returns a schedule item ID on success, -1 on failure
|
* \return Returns a schedule item ID on success, -1 on failure
|
||||||
*/
|
*/
|
||||||
int ast_sched_add_variable(struct sched_context *con, int when, ast_sched_cb callback, const void *data, int variable) __attribute__((warn_unused_result));
|
int ast_sched_add_variable(struct sched_context *con, int when, ast_sched_cb callback, const void *data, int variable) attribute_warn_unused_result;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief replace a scheduler entry
|
* \brief replace a scheduler entry
|
||||||
@@ -190,7 +190,7 @@ int ast_sched_add_variable(struct sched_context *con, int when, ast_sched_cb cal
|
|||||||
* \retval -1 failure
|
* \retval -1 failure
|
||||||
* \retval otherwise, returns scheduled item ID
|
* \retval otherwise, returns scheduled item ID
|
||||||
*/
|
*/
|
||||||
int ast_sched_replace_variable(int old_id, struct sched_context *con, int when, ast_sched_cb callback, const void *data, int variable) __attribute__((warn_unused_result));
|
int ast_sched_replace_variable(int old_id, struct sched_context *con, int when, ast_sched_cb callback, const void *data, int variable) attribute_warn_unused_result;
|
||||||
|
|
||||||
|
|
||||||
/*! \brief Find a sched structure and return the data field associated with it.
|
/*! \brief Find a sched structure and return the data field associated with it.
|
||||||
@@ -210,7 +210,7 @@ const void *ast_sched_find_data(struct sched_context *con, int id);
|
|||||||
* \param id ID of the scheduled item to delete
|
* \param id ID of the scheduled item to delete
|
||||||
* \return Returns 0 on success, -1 on failure
|
* \return Returns 0 on success, -1 on failure
|
||||||
*/
|
*/
|
||||||
int ast_sched_del(struct sched_context *con, int id) __attribute__((warn_unused_result));
|
int ast_sched_del(struct sched_context *con, int id) attribute_warn_unused_result;
|
||||||
|
|
||||||
/*! \brief Determines number of seconds until the next outstanding event to take place
|
/*! \brief Determines number of seconds until the next outstanding event to take place
|
||||||
* Determine the number of seconds until the next outstanding event
|
* Determine the number of seconds until the next outstanding event
|
||||||
@@ -221,7 +221,7 @@ int ast_sched_del(struct sched_context *con, int id) __attribute__((warn_unused_
|
|||||||
* \return Returns "-1" if there is nothing there are no scheduled events
|
* \return Returns "-1" if there is nothing there are no scheduled events
|
||||||
* (and thus the poll should not timeout)
|
* (and thus the poll should not timeout)
|
||||||
*/
|
*/
|
||||||
int ast_sched_wait(struct sched_context *con) __attribute__((warn_unused_result));
|
int ast_sched_wait(struct sched_context *con) attribute_warn_unused_result;
|
||||||
|
|
||||||
/*! \brief Runs the queue
|
/*! \brief Runs the queue
|
||||||
* \param con Scheduling context to run
|
* \param con Scheduling context to run
|
||||||
|
Reference in New Issue
Block a user