Skip to content

Commit f65c100

Browse files
authored
Merge pull request tree-sitter#804 from kdarkhan/aarch64-compilation-fix
tags: fix compilation on aarch64
2 parents b267f90 + bf41088 commit f65c100

File tree

2 files changed

+8
-5
lines changed

2 files changed

+8
-5
lines changed

tags/src/c_lib.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use super::{Error, TagsConfiguration, TagsContext};
22
use std::collections::HashMap;
33
use std::ffi::CStr;
4+
use std::os::raw::c_char;
45
use std::process::abort;
56
use std::sync::atomic::AtomicUsize;
67
use std::{fmt, slice, str};
@@ -73,7 +74,7 @@ pub extern "C" fn ts_tagger_delete(this: *mut TSTagger) {
7374
#[no_mangle]
7475
pub extern "C" fn ts_tagger_add_language(
7576
this: *mut TSTagger,
76-
scope_name: *const i8,
77+
scope_name: *const c_char,
7778
language: Language,
7879
tags_query: *const u8,
7980
locals_query: *const u8,
@@ -109,7 +110,7 @@ pub extern "C" fn ts_tagger_add_language(
109110
#[no_mangle]
110111
pub extern "C" fn ts_tagger_tag(
111112
this: *mut TSTagger,
112-
scope_name: *const i8,
113+
scope_name: *const c_char,
113114
source_code: *const u8,
114115
source_code_len: u32,
115116
output: *mut TSTagsBuffer,
@@ -234,7 +235,7 @@ pub extern "C" fn ts_tags_buffer_found_parse_error(this: *const TSTagsBuffer) ->
234235
#[no_mangle]
235236
pub extern "C" fn ts_tagger_syntax_kinds_for_scope_name(
236237
this: *mut TSTagger,
237-
scope_name: *const i8,
238+
scope_name: *const c_char,
238239
len: *mut u32,
239240
) -> *const *const i8 {
240241
let tagger = unwrap_mut_ptr(this);

tags/src/lib.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ use regex::Regex;
55
use std::collections::HashMap;
66
use std::ffi::{CStr, CString};
77
use std::ops::Range;
8+
use std::os::raw::c_char;
89
use std::sync::atomic::{AtomicUsize, Ordering};
910
use std::{char, fmt, mem, str};
1011
use tree_sitter::{
@@ -230,8 +231,9 @@ impl TagsConfiguration {
230231

231232
pub fn syntax_type_name(&self, id: u32) -> &str {
232233
unsafe {
233-
let cstr = CStr::from_ptr(self.syntax_type_names[id as usize].as_ptr() as *const i8)
234-
.to_bytes();
234+
let cstr =
235+
CStr::from_ptr(self.syntax_type_names[id as usize].as_ptr() as *const c_char)
236+
.to_bytes();
235237
str::from_utf8(cstr).expect("syntax type name was not valid utf-8")
236238
}
237239
}

0 commit comments

Comments
 (0)