aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libasn1parser/asn1p_list.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/libasn1parser/asn1p_list.h b/libasn1parser/asn1p_list.h
index 9d5748cb..d6a669ac 100644
--- a/libasn1parser/asn1p_list.h
+++ b/libasn1parser/asn1p_list.h
@@ -39,9 +39,10 @@
/* MSVC does not have typeof(), cannot prevent side effects! */
#define TQ_ADD(head, xel, field) do { \
- assert(TQ_NEXT((xel), field) == 0); \
- *(head)->tq_tail = (xel); \
- (head)->tq_tail = &TQ_NEXT((xel), field); \
+ typeof(xel) __el = (xel); \
+ assert(TQ_NEXT((__el), field) == 0); \
+ *(head)->tq_tail = (__el); \
+ (head)->tq_tail = &TQ_NEXT((__el), field); \
} while(0)
/*