From b1a7074010b6e32d4577163b4e68abd731fdb970 Mon Sep 17 00:00:00 2001 From: polazarus Date: Tue, 4 Mar 2025 15:26:13 +0100 Subject: [PATCH] fix(generate): mark `TSCharacterRange` as `static` (#4255) Problem: Linking different parsers into one executable fails due to duplicate symbols. Solution: Mark `TSCharacterRange` as `static` when generating parsers. fixes #4209 (cherry picked from commit 8138dba8000bf01ffd81fce0050e57b2bfaf2f75) --- cli/generate/src/render.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cli/generate/src/render.rs b/cli/generate/src/render.rs index dc8f0825..a78faafc 100644 --- a/cli/generate/src/render.rs +++ b/cli/generate/src/render.rs @@ -1111,7 +1111,11 @@ impl Generator { return; } - add_line!(self, "const TSCharacterRange {}[] = {{", info.constant_name); + add_line!( + self, + "static const TSCharacterRange {}[] = {{", + info.constant_name + ); indent!(self); for (ix, range) in characters.ranges().enumerate() {