Skip to content

Does not work on darwin/arm64 #22

@juli1

Description

@juli1

I am trying to use the project for Darwin/ARM64. The problem I am facing is that the program crashes. I am trying to use tree-sitter-python. I am using the configuration directives from the README file.

The program I am using is the following

        try {
            Parser parser = new Parser();
            parser.setLanguage(Languages.python());
            Tree tree = parser.parseString("def foo(bar, baz):\n  print(bar)\n  print(baz)");
            Node root = tree.getRootNode();
            System.out.println(root.getType());

            Node function = root.getChild(0);
            System.out.println(function.getType());
        }
        catch (Exception e){
            System.out.println("exception");
            e.printStackTrace();
        }

At the instruction Node root = tree.getRootNode();, the program crashes. This is the stack trace


Command Line: -agentlib:jdwp=transport=dt_socket,server=n,suspend=y,address=127.0.0.1:51316 -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant org.example.Main

Host: "Mac14,2" arm64, 8 cores, 16G, Darwin 22.3.0, macOS 13.2.1 (22D68)
Time: Fri Mar 17 18:59:24 2023 MDT elapsed time: 5.564390 seconds (0d 0h 0m 5s)

---------------  T H R E A D  ---------------

Current thread (0x0000000134808a00):  JavaThread "main" [_thread_in_native, id=5123, stack(0x000000016b594000,0x000000016b797000)]

Stack: [0x000000016b594000,0x000000016b797000],  sp=0x000000016b7969b0,  free space=2058k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [libjava-tree-sitter.dylib+0x22884]  ts_tree_root_node+0x0
j  ai.serenade.treesitter.TreeSitter.treeRootNode(J)Lai/serenade/treesitter/Node;+0
j  ai.serenade.treesitter.Tree.getRootNode()Lai/serenade/treesitter/Node;+4
j  org.example.Main.main([Ljava/lang/String;)V+36
v  ~StubRoutines::call_stub
V  [libjvm.dylib+0x46e49c]  JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*)+0x390
V  [libjvm.dylib+0x4d2bf8]  jni_invoke_static(JNIEnv_*, JavaValue*, _jobject*, JNICallType, _jmethodID*, JNI_ArgumentPusher*, JavaThread*)+0x110
V  [libjvm.dylib+0x4d627c]  jni_CallStaticVoidMethod+0x130
C  [libjli.dylib+0x9ac8]  JavaMain+0xa80
C  [libjli.dylib+0xbdc0]  ThreadJavaMain+0xc
C  [libsystem_pthread.dylib+0x706c]  _pthread_start+0x94

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  ai.serenade.treesitter.TreeSitter.treeRootNode(J)Lai/serenade/treesitter/Node;+0
j  ai.serenade.treesitter.Tree.getRootNode()Lai/serenade/treesitter/Node;+4
j  org.example.Main.main([Ljava/lang/String;)V+36
v  ~StubRoutines::call_stub

FYI, I am using the JVM amazoncorretto17

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions