Fix EXPECT_SPCI_ERROR not to evaluate value twice.
Change-Id: If52ef8364791c587d7698baf70b7d692927b9711
diff --git a/test/inc/test/vmapi/spci.h b/test/inc/test/vmapi/spci.h
index 3ecebf6..ae6df07 100644
--- a/test/inc/test/vmapi/spci.h
+++ b/test/inc/test/vmapi/spci.h
@@ -18,10 +18,11 @@
#include "vmapi/hf/spci.h"
-#define EXPECT_SPCI_ERROR(value, spci_error) \
- do { \
- EXPECT_EQ(value.func, SPCI_ERROR_32); \
- EXPECT_EQ(value.arg2, spci_error); \
+#define EXPECT_SPCI_ERROR(value, spci_error) \
+ do { \
+ struct spci_value v = (value); \
+ EXPECT_EQ(v.func, SPCI_ERROR_32); \
+ EXPECT_EQ(v.arg2, (spci_error)); \
} while (0)
struct mailbox_buffers {