aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/token.c
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-01-14 23:12:49 +0900
committernsfisis <nsfisis@gmail.com>2026-01-17 00:27:28 +0900
commitf0351da192b8f32bdf9323b3796521cbc390c749 (patch)
tree789fbf7d954a2dd43bf01c80d1ae959a2a807729 /src/token.c
parent82df1b08c42d40c79b0dbd1634e18786cad860da (diff)
downloadducc-f0351da192b8f32bdf9323b3796521cbc390c749.tar.gz
ducc-f0351da192b8f32bdf9323b3796521cbc390c749.tar.zst
ducc-f0351da192b8f32bdf9323b3796521cbc390c749.zip
feat: support #include_next directive (GNU extension)
Diffstat (limited to 'src/token.c')
-rw-r--r--src/token.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/token.c b/src/token.c
index ebb803e..a7b2afd 100644
--- a/src/token.c
+++ b/src/token.c
@@ -47,6 +47,8 @@ const char* token_kind_stringify(TokenKind k) {
return "#ifndef";
else if (k == TokenKind_pp_directive_include)
return "#include";
+ else if (k == TokenKind_pp_directive_include_next)
+ return "#include_next";
else if (k == TokenKind_pp_directive_line)
return "#line";
else if (k == TokenKind_pp_directive_non_directive)
@@ -283,8 +285,9 @@ bool is_pp_directive(TokenKind k) {
k == TokenKind_pp_directive_else || k == TokenKind_pp_directive_embed || k == TokenKind_pp_directive_endif ||
k == TokenKind_pp_directive_error || k == TokenKind_pp_directive_if || k == TokenKind_pp_directive_ifdef ||
k == TokenKind_pp_directive_ifndef || k == TokenKind_pp_directive_include ||
- k == TokenKind_pp_directive_line || k == TokenKind_pp_directive_non_directive ||
- k == TokenKind_pp_directive_nop || k == TokenKind_pp_directive_pragma || k == TokenKind_pp_directive_undef ||
+ k == TokenKind_pp_directive_include_next || k == TokenKind_pp_directive_line ||
+ k == TokenKind_pp_directive_non_directive || k == TokenKind_pp_directive_nop ||
+ k == TokenKind_pp_directive_pragma || k == TokenKind_pp_directive_undef ||
k == TokenKind_pp_directive_warning;
}