diff --git a/Makefile b/Makefile index 6030852e..046f9260 100644 --- a/Makefile +++ b/Makefile @@ -18,7 +18,7 @@ endif OBJ := $(SRC:.c=.o) # define default flags, and override to append mandatory flags -override CFLAGS := -O3 -std=gnu99 -fPIC -fvisibility=hidden -Wall -Wextra -Wshadow $(CFLAGS) +override CFLAGS := -O3 -std=gnu11 -fPIC -fvisibility=hidden -Wall -Wextra -Wshadow -pedantic $(CFLAGS) override CFLAGS += -Ilib/src -Ilib/src/wasm -Ilib/include # ABI versioning diff --git a/lib/src/query.c b/lib/src/query.c index b801dcd9..3b4ae901 100644 --- a/lib/src/query.c +++ b/lib/src/query.c @@ -1030,7 +1030,7 @@ static inline void analysis_state_set__delete(AnalysisStateSet *self) { * QueryAnalyzer ****************/ -static inline QueryAnalysis query_analysis__new() { +static inline QueryAnalysis query_analysis__new(void) { return (QueryAnalysis) { .states = array_new(), .next_states = array_new(), diff --git a/lib/src/stack.c b/lib/src/stack.c index 34846352..ae412d8e 100644 --- a/lib/src/stack.c +++ b/lib/src/stack.c @@ -12,9 +12,9 @@ #define MAX_ITERATOR_COUNT 64 #if defined _WIN32 && !defined __GNUC__ -#define inline __forceinline +#define forceinline __forceinline #else -#define inline static inline __attribute__((always_inline)) +#define forceinline static inline __attribute__((always_inline)) #endif typedef struct StackNode StackNode; @@ -509,7 +509,7 @@ void ts_stack_push( head->node = new_node; } -inline StackAction pop_count_callback(void *payload, const StackIterator *iterator) { +forceinline StackAction pop_count_callback(void *payload, const StackIterator *iterator) { unsigned *goal_subtree_count = payload; if (iterator->subtree_count == *goal_subtree_count) { return StackActionPop | StackActionStop; @@ -522,7 +522,7 @@ StackSliceArray ts_stack_pop_count(Stack *self, StackVersion version, uint32_t c return stack__iter(self, version, pop_count_callback, &count, (int)count); } -inline StackAction pop_pending_callback(void *payload, const StackIterator *iterator) { +forceinline StackAction pop_pending_callback(void *payload, const StackIterator *iterator) { (void)payload; if (iterator->subtree_count >= 1) { if (iterator->is_pending) { @@ -544,7 +544,7 @@ StackSliceArray ts_stack_pop_pending(Stack *self, StackVersion version) { return pop; } -inline StackAction pop_error_callback(void *payload, const StackIterator *iterator) { +forceinline StackAction pop_error_callback(void *payload, const StackIterator *iterator) { if (iterator->subtrees.size > 0) { bool *found_error = payload; if (!*found_error && ts_subtree_is_error(iterator->subtrees.contents[0])) { @@ -575,7 +575,7 @@ SubtreeArray ts_stack_pop_error(Stack *self, StackVersion version) { return (SubtreeArray) {.size = 0}; } -inline StackAction pop_all_callback(void *payload, const StackIterator *iterator) { +forceinline StackAction pop_all_callback(void *payload, const StackIterator *iterator) { (void)payload; return iterator->node->link_count == 0 ? StackActionPop : StackActionNone; } @@ -589,7 +589,7 @@ typedef struct { unsigned max_depth; } SummarizeStackSession; -inline StackAction summarize_stack_callback(void *payload, const StackIterator *iterator) { +forceinline StackAction summarize_stack_callback(void *payload, const StackIterator *iterator) { SummarizeStackSession *session = payload; TSStateId state = iterator->node->state; unsigned depth = iterator->subtree_count; @@ -894,4 +894,4 @@ bool ts_stack_print_dot_graph(Stack *self, const TSLanguage *language, FILE *f) return true; } -#undef inline +#undef forceinline