tests: Mark tests used so they don’t get removed at link time

Without this attribute, these macros were making Weston’s tests fail to
build with LTO enabled.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94602
Signed-off-by: Markus Trippelsdorf <markus@trippelsdorf.de>
Signed-off-by: Emmanuel Gil Peyrot <emmanuel.peyrot@collabora.com>
Tested-by: Emmanuel Gil Peyrot <emmanuel.peyrot@collabora.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
diff --git a/tests/test-runner.h b/tests/test-runner.h
index c7a84aa..81ed034 100644
--- a/tests/test-runner.h
+++ b/tests/test-runner.h
@@ -41,7 +41,7 @@
 	static void name(void);						\
 									\
 	const struct test test##name					\
-		 __attribute__ ((section ("test_section"))) = {		\
+		 __attribute__ ((used, section ("test_section"))) = {	\
 		#name, name, 0						\
 	};								\
 									\
@@ -51,7 +51,7 @@
 	static void name(void);						\
 									\
 	const struct test test##name					\
-		 __attribute__ ((section ("test_section"))) = {		\
+		 __attribute__ ((used, section ("test_section"))) = {	\
 		#name, name, 1						\
 	};								\
 									\