Powered by Linux
[PATCH] unreachable() is defined in C23 as function-like macro, — Semantic Matching Tool

[PATCH] unreachable() is defined in C23 as function-like macro,

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



undefine it.

This definition conflicts with usage in smatch, as it has a valid
meaning in processing syntactic tree, not a mark that part of the
smatch state itself can't be reached.

Other possible solution would be mass-rename of all usages to prevent
conflict.

Gentoo bug https://bugs.gentoo.org/944322
---
smatch.h | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/smatch.h b/smatch.h
index fcca134f..0cf658dd 100644
--- a/smatch.h
+++ b/smatch.h
@@ -825,6 +825,10 @@ void __set_fake_cur_stree_fast(struct stree *stree);
void __pop_fake_cur_stree_fast(void);
void __merge_stree_into_cur(struct stree *stree);

+#if __STDC_VERSION__ > 201710L
+#undef unreachable //defined in C23
+#endif
+
int unreachable(void);
void __set_cur_stree_readonly(void);
void __set_cur_stree_writable(void);
--
2.48.1






[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux