[libvirt] [PATCH 2/6] Workaround issue with clang and inline functions with static vars

Daniel P. Berrange berrange at redhat.com
Mon May 13 12:17:23 UTC 2013


From: "Daniel P. Berrange" <berrange at redhat.com>

Clang does not like it when you pass a static variable to an
inline function

 vircgroupmock.c:462:22: error: static variable 'fakesysfsdir' is
  used in an inline function with external linkage [-Werror,-Wstatic-in-inline]

Just make the var non-static to avoid this

Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
---
 tests/vircgroupmock.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/tests/vircgroupmock.c b/tests/vircgroupmock.c
index 17ea75f..f1a5700 100644
--- a/tests/vircgroupmock.c
+++ b/tests/vircgroupmock.c
@@ -37,7 +37,12 @@ static int (*realaccess)(const char *path, int mode);
 static int (*reallstat)(const char *path, struct stat *sb);
 static int (*real__lxstat)(int ver, const char *path, struct stat *sb);
 static int (*realmkdir)(const char *path, mode_t mode);
-static char *fakesysfsdir;
+
+/* Don't make static, since it causes problems with clang
+ * when passed as an arg to asprintf()
+ * vircgroupmock.c:462:22: error: static variable 'fakesysfsdir' is used in an inline function with external linkage [-Werror,-Wstatic-in-inline]
+ */
+char *fakesysfsdir;
 
 
 # define SYSFS_PREFIX "/not/really/sys/fs/cgroup/"
-- 
1.8.2.1




More information about the libvir-list mailing list