>>> tree-sitter-php: Building community/tree-sitter-php 0.25.1-r0 (using abuild 3.18.0_rc7-r1) started Fri, 06 Nov 2026 08:53:42 +0000 >>> tree-sitter-php: Validating /home/buildozer/aports/community/tree-sitter-php/APKBUILD... >>> tree-sitter-php: Analyzing dependencies... >>> tree-sitter-php: Installing for build: build-base tree-sitter-dev tree-sitter-cli ( 1/18) Installing oniguruma (6.9.10-r0) ( 2/18) Installing jq (1.8.2-r0) ( 3/18) Installing tree-sitter (0.27.1-r0) ( 4/18) Installing tree-sitter-dev (0.27.1-r0) ( 5/18) Installing ca-certificates (20261020-r0) ( 6/18) Installing ada-libs (4.0.0-r0) ( 7/18) Installing icu-data-en (78.1-r0) Executing icu-data-en-78.1-r0.post-install * If you need ICU with non-English locales and legacy charset support, install * package icu-data-full. ( 8/18) Installing icu-libs (78.1-r0) ( 9/18) Installing simdjson (5.0.5-r0) (10/18) Installing simdutf (9.3.2-r0) (11/18) Installing sqlite-libs (3.54.1-r0) (12/18) Installing nodejs (24.22.1-r1) (13/18) Installing wasi-libc (27.20250626-r1) (14/18) Installing wasi-libcxx (23.1.5-r0) (15/18) Installing wasi-compiler-rt (23.1.5-r0) (16/18) Installing wasi-sdk (27-r2) (17/18) Installing tree-sitter-cli (0.27.1-r0) (18/18) Installing .makedepends-tree-sitter-php (20261106.085343) Executing busybox-1.38.0-r8.trigger Executing ca-certificates-20261020-r0.trigger OK: 541.2 MiB in 123 packages >>> tree-sitter-php: Cleaning up srcdir >>> tree-sitter-php: Cleaning up pkgdir >>> tree-sitter-php: Cleaning up tmpdir >>> tree-sitter-php: Fetching https://distfiles.alpinelinux.org/distfiles/v3.25/tree-sitter-php-0.25.1.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) saving to '/var/cache/distfiles/v3.25/tree-sitter-php-0.25.1.tar.gz.part' tree-sitter-php-0.25 100% |********************************| 747k 0:00:00 ETA '/var/cache/distfiles/v3.25/tree-sitter-php-0.25.1.tar.gz.part' saved /var/cache/distfiles/v3.25/tree-sitter-php-0.25.1.tar.gz: OK >>> tree-sitter-php: Fetching https://distfiles.alpinelinux.org/distfiles/v3.25/tree-sitter-php-0.25.1.tar.gz /var/cache/distfiles/v3.25/tree-sitter-php-0.25.1.tar.gz: OK >>> tree-sitter-php: Unpacking /var/cache/distfiles/v3.25/tree-sitter-php-0.25.1.tar.gz... + cc -fPIC -Wall -I ./ '-std=c99' -Os -fstack-clash-protection -Wformat '-Werror=format-security' -fno-plt -c ./parser.c ./scanner.c + find -name '*.cc' + grep -q . + cc -shared -Wl,--as-needed,-O1,--sort-common -Wl,-z,pack-relative-relocs -o php.so ./parser.o ./scanner.o bugs: 1. ✓ Parse error when using self as constant 2. ✓ Incorrect precedence for error suppression operator 3. ✓ Error when using expressions as named argument 4. ✓ Error when closing tag is in a string 5. ✓ Error with comment inside binary expression 6. ✓ Class constants can contain primitive types class: 7. ✓ Abstract class 8. ✓ Anonymous classes 9. ✓ Conditional class definition 10. ✓ Class constant modifiers 11. ✓ Typed class constants 12. ✓ Final class 13. ✓ Implicitly public properties and methods 14. ✓ Reserved keywords properties and methods 15. ✓ Property Types 16. ✓ Constructor Property Promotion 17. ✓ Readonly properties 18. ✓ Constructor property promotion with readonly modifier 19. ✓ Readonly class 20. ✓ Constants in trait 21. ✓ Property Hooks 22. ✓ Asymmetric Property Visibility 23. ✗ Asymmetric Visibility in Constructor Promotion declarations: 24. ✓ Class declarations 25. ✓ Interface declarations 26. ✓ Use declarations 27. ✗ Namespace use declarations 28. ✓ Namespace names in namespaces 29. ✓ Reserved keyword in namespace 30. ✓ Relative namespace names 31. ✓ Class declarations 32. ✓ Class declarations with base classes 33. ✓ Function parameters 34. ✓ Functions with default parameters 35. ✓ Static variables in functions 36. ✓ Defining Constants 37. ✓ Attributes 38. ✓ Enums errors: 39. ✓ Error detected at globally reserved keyword execution_operator: 40. ✓ Quotes in backticks 41. ✓ Escape sequences in backticks 42. ✓ Variable interpolation in backticks 43. ✓ Member access expression in backticks 44. ✓ Array subscript expression in backticks 45. ✓ Complex interpolation in backticks 46. ✓ Nesting of expression in backticks 47. ✓ Nested escaped backticks 48. ✓ Comment in backticks expressions: 49. ✓ Dynamic variable names 50. ✓ Exponentiation 51. ✓ Reserved Identifiers as Names 52. ✓ Unary op with assignment expressions 53. ✓ Capitalized logical operators 54. ✓ Cast expressions in assignments 55. ✓ Cast include 56. ✓ Reserved words as function calls 57. ✓ Scoped self call expressions 58. ✓ Member call expressions 59. ✓ Symmetric array destructuring 60. ✓ Precedence of assignment, `or`, `xor`, and `and` 61. ✓ Associativity of conditional 62. ✓ Associativity of null-coalescence 63. ✓ Associativity of negation 64. ✓ Augmented assignment 65. ✓ Nested assignemnts 66. ✓ All binary op precedence levels 67. ✓ Concatenation precedence 68. ✓ Arrays 69. ✓ Anonymous functions 70. ✓ Throw expressions 71. ✓ Nullsafe operator 72. ✓ First class callable syntax 73. ✗ Partial function application -- Warning: Slow parse rate (222.407 bytes/ms) 74. ✓ Clone expressions 75. ✗ Clone with arguments -- Warning: Slow parse rate (146.888 bytes/ms) 76. ✓ Match expressions 77. ✓ Arrow functions 78. ✓ Functions with named arguments 79. ✓ Cast-type constants as arguments 80. ✓ Precedence between concatenation and shift 81. ✓ References 82. ✓ Empty match expressions 83. ✓ Class constant access 84. ✓ Dynamic class constant access 85. ✓ Class instantiation 86. ✓ UTF-8 identifiers 87. ✓ Yield expressions 88. ✓ Instanceof 89. ✓ Pipe operator interpolation: 90. ✓ no interpolated text 91. ✓ interpolated text at beginning 92. ✓ interpolated text at end 93. ✓ interpolated text in middle 94. ✓ short open tag: On 95. ✓ short open tag: Off 96. ✓ Single line php comment 97. ✓ Single line comment without any content 98. ✓ Closing tags before the first PHP tag 99. ✓ WordPress colon blocks 100. ✓ octothorpe immediately after text interpolation literals: 101. ✓ Booleans 102. ✓ Floats 103. ✓ Integers 104. ✓ Testing string scanner conformance 105. ✓ Shell command nowdoc: 106. ✓ Nowdocs 107. ✗ Nowdoc concatenated after closer php_only: 108. ✓ If statement 109. ✓ Class statements: 110. ✓ If statements 111. ✓ Alternative if statements 112. ✓ While statements 113. ✓ Alternative while statements 114. ✓ For statements 115. ✓ Switch statements 116. ✓ Alternative switch statements 117. ✓ Include statement 118. ✓ Do-while statements 119. ✓ Try statements 120. ✓ Foreach statements 121. ✓ Case insensitive keywords 122. ✓ Accessing Constants 123. ✓ Named label and goto statement 124. ✓ Exit statements string: 125. ✓ Complex: Variable access 126. ✓ Complex: Disallow space between { and $ 127. ✓ Complex: PHP documentation tests 128. ✓ Simple: Variable access 129. ✓ Simple: Member and array access 130. ✓ Corner cases 131. ✓ Single quoted 132. ✓ Bug: #113 133. ✓ Heredocs 134. ✓ Nowdocs 135. ✓ Here/Nowdoc with numbers in identifier 136. ✓ Unicode escape sequences 137. ✓ Complex string types: 138. ✓ Type names 139. ✓ Primitive types 140. ✓ Intersection type 141. ✓ Disjunctive Normal Form type 142. ✓ Optional types 143. ✓ Union types 144. ✓ Mixed type 145. ✓ Static type 146. ✓ Null type 147. ✓ False type 148. ✓ True type 5 failures: correct / expected / unexpected 1. Asymmetric Visibility in Constructor Promotion: (program (php_tag) (class_declaration name: (name) body: (declaration_list (method_declaration (visibility_modifier) name: (name) parameters: (formal_parameters (property_promotion_parameter visibility: (visibility_modifier)  (ERROR  (name)  (disjunctive_normal_form_type  (intersection_type  (named_type  (name)))))  visibility: (visibility_modifier  (operation))  type: (primitive_type) name: (variable_name (name))) (property_promotion_parameter visibility: (visibility_modifier)  (ERROR  (name)  (disjunctive_normal_form_type  (intersection_type  (named_type  (name)))))  visibility: (visibility_modifier  (operation))  type: (primitive_type) name: (variable_name (name))) (property_promotion_parameter visibility: (visibility_modifier (operation)) type: (primitive_type) name: (variable_name (name)))) body: (compound_statement))))) 2. Namespace use declarations: (program (php_tag) (namespace_definition name: (namespace_name (name) (name) (name))) (namespace_use_declaration (namespace_use_clause (qualified_name prefix: (namespace_name (name) (name)) (name)))) (namespace_use_declaration (namespace_use_clause (qualified_name prefix: (namespace_name (name) (name)) (name)) alias: (name))) (namespace_use_declaration (namespace_use_clause (qualified_name prefix: (namespace_name (name) (name)) (name))) (namespace_use_clause (qualified_name prefix: (namespace_name (name) (name)) (name)))) (namespace_use_declaration (namespace_use_clause (qualified_name prefix: (namespace_name (name) (name)) (name)))) (namespace_use_declaration (namespace_use_clause (qualified_name prefix: (namespace_name (name) (name)) (name)) alias: (name))) (namespace_use_declaration (namespace_use_clause (qualified_name prefix: (namespace_name (name) (name)) (name)))) (namespace_use_declaration (namespace_use_clause (qualified_name prefix: (namespace_name (name) (name)) (name)) alias: (name))) (namespace_use_declaration (namespace_name (name) (name)) body: (namespace_use_group (namespace_use_clause (name)) (namespace_use_clause (name)))) (namespace_use_declaration (namespace_name (name) (name)) body: (namespace_use_group (namespace_use_clause (name)) (namespace_use_clause (name)))) (namespace_use_declaration (namespace_name (name) (name)) body: (namespace_use_group (namespace_use_clause (name)) (namespace_use_clause (name)))) (namespace_use_declaration (namespace_name (name) (name)) body: (namespace_use_group (namespace_use_clause (name)) (namespace_use_clause (name) alias: (name)) (namespace_use_clause (name)) (namespace_use_clause (name) alias: (name)) (namespace_use_clause (name)) (namespace_use_clause (name) alias: (name)))) (namespace_use_declaration  (namespace_use_clause  (qualified_name  (name)))  (ERROR  (ERROR  (namespace_name  (name))  body: (namespace_use_group  (namespace_use_clause  (name))  (name)))  (namespace_use_clause  (name))))  (namespace_use_declaration  (namespace_use_clause  (qualified_name  (name)))  (ERROR  (ERROR)  (name)))  (namespace_name  (name))  body: (namespace_use_group  (namespace_use_clause  (name))))  (namespace_use_declaration  (namespace_use_clause  (qualified_name  (name)))  (ERROR  (ERROR)  (name))))  (namespace_name  (name))  body: (namespace_use_group  (namespace_use_clause  (name)))))  3. Partial function application: (program (php_tag) (expression_statement (function_call_expression (name) (arguments (argument (function_call_expression (name) (arguments (argument (string (string_content))) (argument (string (string_content)))  (ERROR)  (argument  (variable_name  (name))))))  (MISSING ")"))))  (argument_placeholder)))))  (argument  (variable_name  (name))))))  (expression_statement  (variable_name  (name))  (ERROR  (name)  (name)  (argument  (string  (string_content)))  (argument  (string  (string_content)))  (ERROR)  (name)  (argument  (integer))  (ERROR)  (argument  (binary_expression  (variable_name  (name))  (ERROR)  (argument  (function_call_expression  (name)  (float))  (variadic_unpacking  (ERROR)  (function_call_expression  (arguments  (argument  (function_call_expression  (name)  (arguments  (argument  (string  (string_content)))  (argument  (string  (string_content)))  (argument  (argument_placeholder)))))  (argument  (argument_placeholder))))))  (expression_statement  (function_call_expression  (name)  (arguments  (argument  (integer))  (argument  (argument_placeholder))  (argument  (name)  (arguments  (argument  (integer))  (ERROR)  (argument  (integer))  (argument  (variadic_unpacking  (MISSING name)))))))))  (argument_placeholder))  (argument  (name)  (float))  (variadic_placeholder))))  (expression_statement  (function_call_expression  (name)  (arguments  (argument  (integer))  (argument  (argument_placeholder))  (argument  (integer))  (variadic_placeholder)))))  4. Clone with arguments: (program (php_tag) (expression_statement (clone_expression  (parenthesized_expression  (subscript_expression  arguments: (arguments  (argument  (variable_name  (name))  (ERROR)  (string  (string_content))  (ERROR  (integer))))))  (name)))  (argument  (array_creation_expression  (array_element_initializer  (string  (string_content))  (integer)))))))  (expression_statement (clone_expression  (parenthesized_expression  (ERROR  arguments: (arguments  (argument  (variable_name  (name))  (name))  (array_creation_expression  (array_element_initializer  (string  (string_content))  (integer))))))  (name)))  (argument  name: (name)  (array_creation_expression  (array_element_initializer  (string  (string_content))  (integer)))))))  (expression_statement (clone_expression  (parenthesized_expression  (ERROR  arguments: (arguments  (argument  name: (name)  (variable_name  (name))  (name))  (array_creation_expression  (array_element_initializer  (string  (string_content))  (integer))))))  (name)))  (argument  name: (name)  (array_creation_expression  (array_element_initializer  (string  (string_content))  (integer)))))))  (expression_statement (clone_expression  (parenthesized_expression  (ERROR  (name)  arguments: (arguments  (argument  name: (name)  (array_creation_expression (array_element_initializer (string (string_content)) (integer))))  (variable_name  (name)))))  (argument  name: (name)  (variable_name  (name))))))  (expression_statement  (clone_expression  arguments: (arguments  (argument  name: (name)  (variable_name  (name))))))  (expression_statement  (clone_expression  arguments: (arguments  (argument  (variable_name  (name))))))  (expression_statement (clone_expression  (parenthesized_expression  (ERROR)  (variable_name  (name)))))  (ERROR  (ERROR  (variable_name  (name))  (clone_expression  (parenthesized_expression  (binary_expression  left: (float)  (ERROR  (float))  right: (variable_name  (name)))))  (clone_expression  (parenthesized_expression  (binary_expression  left: (float)  right: (float)))))  (ERROR)  (variable_name  (name))  (ERROR)  (ERROR)  arguments: (arguments  (argument  (variadic_unpacking  (variable_name  (name)))))))  (expression_statement  (clone_expression  arguments: (arguments  (variadic_placeholder))))  (expression_statement  (clone_expression  arguments: (arguments)))  (expression_statement  (clone_expression  arguments: (arguments  (argument  (variable_name  (name)))  (argument  (argument_placeholder)))))  (expression_statement  (member_call_expression object: (parenthesized_expression (clone_expression  (parenthesized_expression  (subscript_expression  arguments: (arguments  (argument  (variable_name  (name))  (ERROR)  (string  (string_content))  (ERROR  (integer))))))  (name)))  (argument  (array_creation_expression  (array_element_initializer  (string  (string_content))  (integer)))))))  name: (name)  arguments: (arguments)))  (empty_statement))  arguments: (arguments))))  5. Nowdoc concatenated after closer: (program (php_tag)  (ERROR  (variable_name  (name))  (heredoc_start)  (nowdoc_body  (nowdoc_string)  (nowdoc_string))))  (expression_statement  (assignment_expression  left: (variable_name  (name))  right: (binary_expression  left: (nowdoc  identifier: (heredoc_start)  value: (nowdoc_body  (nowdoc_string))  end_tag: (heredoc_end))  right: (name)))))  Total parses: 148; successful parses: 143; failed parses: 5; success percentage: 96.62%; average speed: 1071 bytes/ms >>> ERROR: tree-sitter-php: check failed >>> tree-sitter-php: Uninstalling dependencies... ( 1/18) Purging .makedepends-tree-sitter-php (20261106.085343) ( 2/18) Purging tree-sitter-dev (0.27.1-r0) ( 3/18) Purging jq (1.8.2-r0) ( 4/18) Purging tree-sitter (0.27.1-r0) ( 5/18) Purging tree-sitter-cli (0.27.1-r0) ( 6/18) Purging nodejs (24.22.1-r1) ( 7/18) Purging ca-certificates (20261020-r0) Executing ca-certificates-20261020-r0.post-deinstall ( 8/18) Purging wasi-sdk (27-r2) ( 9/18) Purging wasi-libc (27.20250626-r1) (10/18) Purging wasi-libcxx (23.1.5-r0) (11/18) Purging wasi-compiler-rt (23.1.5-r0) (12/18) Purging ada-libs (4.0.0-r0) (13/18) Purging icu-libs (78.1-r0) (14/18) Purging oniguruma (6.9.10-r0) (15/18) Purging simdjson (5.0.5-r0) (16/18) Purging simdutf (9.3.2-r0) (17/18) Purging sqlite-libs (3.54.1-r0) (18/18) Purging icu-data-en (78.1-r0) Executing busybox-1.38.0-r8.trigger OK: 441.7 MiB in 105 packages