From 92675117a65adb3b6d9ffde6e832fb4214b9110c Mon Sep 17 00:00:00 2001 From: Amaan Qureshi Date: Mon, 4 Mar 2024 22:28:02 -0500 Subject: [PATCH] fix(generate): extern allocator functions for the template don't need to be "exported" --- cli/src/generate/render.rs | 4 ---- cli/src/generate/templates/alloc.h | 16 +++++----------- cli/src/tests/detect_language.rs | 3 --- 3 files changed, 5 insertions(+), 18 deletions(-) diff --git a/cli/src/generate/render.rs b/cli/src/generate/render.rs index 4578e3e7..2c0f73a5 100644 --- a/cli/src/generate/render.rs +++ b/cli/src/generate/render.rs @@ -1341,10 +1341,6 @@ impl Generator { add_line!(self, ""); } - add_line!(self, "#ifdef TS_PUBLIC"); - add_line!(self, "#undef TS_PUBLIC"); - add_line!(self, "#endif"); - add_line!(self, ""); add_line!(self, "#ifdef _WIN32"); add_line!(self, "#define TS_PUBLIC __declspec(dllexport)"); add_line!(self, "#else"); diff --git a/cli/src/generate/templates/alloc.h b/cli/src/generate/templates/alloc.h index c7ba9228..1f4466d7 100644 --- a/cli/src/generate/templates/alloc.h +++ b/cli/src/generate/templates/alloc.h @@ -9,20 +9,14 @@ extern "C" { #include #include -#ifdef _WIN32 -#define TS_PUBLIC -#else -#define TS_PUBLIC __attribute__((visibility("default"))) -#endif - -TS_PUBLIC extern void *(*ts_current_malloc)(size_t); -TS_PUBLIC extern void *(*ts_current_calloc)(size_t, size_t); -TS_PUBLIC extern void *(*ts_current_realloc)(void *, size_t); -TS_PUBLIC extern void (*ts_current_free)(void *); - // Allow clients to override allocation functions #ifdef TREE_SITTER_REUSE_ALLOCATOR +extern void *(*ts_current_malloc)(size_t); +extern void *(*ts_current_calloc)(size_t, size_t); +extern void *(*ts_current_realloc)(void *, size_t); +extern void (*ts_current_free)(void *); + #ifndef ts_malloc #define ts_malloc ts_current_malloc #endif diff --git a/cli/src/tests/detect_language.rs b/cli/src/tests/detect_language.rs index 8bc79ff5..c4f41185 100644 --- a/cli/src/tests/detect_language.rs +++ b/cli/src/tests/detect_language.rs @@ -97,9 +97,6 @@ fn tree_sitter_dir(package_json: &str, name: &str) -> tempfile::TempDir { format!( r##" #include "tree_sitter/parser.h" - #ifdef TS_PUBLIC - #undef TS_PUBLIC - #endif #ifdef _WIN32 #define TS_PUBLIC __declspec(dllexport) #else