[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v5 40/48] glib-compat: add 2.38/2.40/2.46 assert
From: |
Claudio Fontana |
Subject: |
Re: [Qemu-devel] [PATCH v5 40/48] glib-compat: add 2.38/2.40/2.46 asserts |
Date: |
Mon, 5 Oct 2015 12:56:30 +0200 |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 |
On 02.10.2015 21:09, address@hidden wrote:
> From: Marc-André Lureau <address@hidden>
>
> Those are mostly useful for writing tests.
>
> Signed-off-by: Marc-André Lureau <address@hidden>
> ---
> include/glib-compat.h | 61
> +++++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 61 insertions(+)
>
> diff --git a/include/glib-compat.h b/include/glib-compat.h
> index 318e000..fb25f43 100644
> --- a/include/glib-compat.h
> +++ b/include/glib-compat.h
> @@ -165,4 +165,65 @@ static inline GThread *g_thread_new(const char *name,
> #define CompatGCond GCond
> #endif /* glib 2.31 */
>
> +#ifndef g_assert_true
> +#define g_assert_true(expr)
> \
> + do {
> \
> + if (G_LIKELY(expr)) {
> \
> + } else {
> \
> + g_assertion_message(G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC,
> \
> + "'" #expr "' should be TRUE");
> \
> + }
> \
> + } while (0)
> +#endif
> +
> +#ifndef g_assert_false
> +#define g_assert_false(expr)
> \
> + do {
> \
> + if (G_LIKELY(!(expr))) {
> \
> + } else {
> \
> + g_assertion_message(G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC,
> \
> + "'" #expr "' should be FALSE");
> \
> + }
> \
> + } while (0)
> +#endif
> +
> +#ifndef g_assert_null
> +#define g_assert_null(expr)
> \
> + do {
> \
> + if (G_LIKELY((expr) == NULL)) {
> \
> + } else {
> \
> + g_assertion_message(G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC,
> \
> + "'" #expr "' should be NULL");
> \
> + }
> \
> + } while (0)
> +#endif
> +
> +#ifndef g_assert_nonnull
> +#define g_assert_nonnull(expr)
> \
> + do {
> \
> + if (G_LIKELY((expr) != NULL)) {
> \
> + } else {
> \
> + g_assertion_message(G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC,
> \
> + "'" #expr "' should not be NULL");
> \
> + }
> \
> + } while (0)
> +#endif
> +
> +#ifndef g_assert_cmpmem
> +#define g_assert_cmpmem(m1, l1, m2, l2)
> \
> + do {
> \
> + gconstpointer __m1 = m1, __m2 = m2;
> \
> + int __l1 = l1, __l2 = l2;
> \
> + if (__l1 != __l2) {
> \
> + g_assertion_message_cmpnum(
> \
> + G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC,
> \
> + #l1 " (len(" #m1 ")) == " #l2 " (len(" #m2 "))", __l1, "==",
> \
> + __l2, 'i');
> \
> + } else if (memcmp(__m1, __m2, __l1) != 0) {
> \
> + g_assertion_message(G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC,
> \
> + "assertion failed (" #m1 " == " #m2 ")");
> \
> + }
> \
> + } while (0)
> +#endif
> +
> #endif
>
Hi, I did not find g_assertion_message in any of the exported GLIB APIs.
In fact, I found it in glib/gtestutils.h under the section "internal ABI".
This is a hint that we should not be using it right?
Ciao,
CLaudio
- [Qemu-devel] [PATCH v5 29/48] ivshmem: error on too many eventfd received, (continued)
- [Qemu-devel] [PATCH v5 29/48] ivshmem: error on too many eventfd received, marcandre . lureau, 2015/10/08
- [Qemu-devel] [PATCH v5 33/48] ivshmem-server: use a uint16 for client ID, marcandre . lureau, 2015/10/08
- [Qemu-devel] [PATCH v5 31/48] contrib: add ivshmem client and server, marcandre . lureau, 2015/10/08
- [Qemu-devel] [PATCH v5 36/48] ivshmem: add check on protocol version in QEMU, marcandre . lureau, 2015/10/08
- [Qemu-devel] [PATCH v5 39/48] qtest: add qtest_add_abrt_handler(), marcandre . lureau, 2015/10/08
- [Qemu-devel] [PATCH v5 40/48] glib-compat: add 2.38/2.40/2.46 asserts, marcandre . lureau, 2015/10/08
- Re: [Qemu-devel] [PATCH v5 40/48] glib-compat: add 2.38/2.40/2.46 asserts,
Claudio Fontana <=
[Qemu-devel] [PATCH v5 46/48] ivshmem: rename MSI eventfd_table, marcandre . lureau, 2015/10/08
[Qemu-devel] [PATCH v5 06/48] ivshmem: remove unnecessary dup(), marcandre . lureau, 2015/10/08
[Qemu-devel] [PATCH v5 14/48] ivshmem: remove useless ivshmem_update_irq() val argument, marcandre . lureau, 2015/10/08
[Qemu-devel] [PATCH v5 03/48] ivhsmem: read do not accept more than sizeof(long), marcandre . lureau, 2015/10/08
[Qemu-devel] [PATCH v5 08/48] ivshmem: remove useless doorbell field, marcandre . lureau, 2015/10/08
[Qemu-devel] [PATCH v5 27/48] ivshmem: fix pci_ivshmem_exit(), marcandre . lureau, 2015/10/08