summaryrefslogtreecommitdiffstats
path: root/lib/ccan/asearch/test/compile_fail-return-value-const.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/ccan/asearch/test/compile_fail-return-value-const.c')
-rw-r--r--lib/ccan/asearch/test/compile_fail-return-value-const.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/lib/ccan/asearch/test/compile_fail-return-value-const.c b/lib/ccan/asearch/test/compile_fail-return-value-const.c
new file mode 100644
index 00000000000..2edee935012
--- /dev/null
+++ b/lib/ccan/asearch/test/compile_fail-return-value-const.c
@@ -0,0 +1,25 @@
+#include <ccan/asearch/asearch.h>
+#include <ccan/array_size/array_size.h>
+#include <string.h>
+
+static int cmp(const char *key, const char *const *elem)
+{
+ return strcmp(key, *elem);
+}
+
+int main(void)
+{
+ const char key[] = "key";
+ const char *elems[] = { "a", "big", "list", "of", "things" };
+
+#ifdef FAIL
+ char **p;
+#if !HAVE_TYPEOF
+#error "Unfortunately we don't fail if no typeof."
+#endif
+#else
+ const char **p;
+#endif
+ p = asearch(key, elems, ARRAY_SIZE(elems), cmp);
+ return p ? 0 : 1;
+}