Subject: bug#64830: closed (Re: bug#64830: 30.0.50 C++ treesitter mode no coloration)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 12 Sep 2024 08:08:02 +0000

Your bug report

#64830: 29.1; C++ treesitter mode no coloration

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
64830: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=64830
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#64830: 30.0.50 C++ treesitter mode no coloration
From: Yuan Fu <[email-masked]>
To: Eli Zaretskii <[email-masked]>
Cc: [email-masked], Alan Mackenzie <[email-masked]>, Stefan Kangas <[email-masked]>
Date: Thu, 12 Sep 2024 01:06:00 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

> On Sep 11, 2024, at 5:09 AM, Eli Zaretskii <[email-masked]> wrote:
> 
>> From: Yuan Fu <[email-masked]>
>> Date: Tue, 10 Sep 2024 22:09:04 -0700
>> Cc: [email-masked],
>> [email-masked],
>> [email-masked]
>> 
>> Done. Please take a look at the latest patch, thanks!
> 
> LGTM, but...
> 
>> +struct treesit_loaded_lang
>> +{
>> +  /* The language object.  */
>> +  TSLanguage *lang;
>> +  /* The path to the shared library.  */
>> +  const char *filename;
>> +};
>> +
> 
> ..."path" again.
> 
>> +DEFUN ("treesit-grammar-location", Ftreesit_grammar_location,
>> +       Streesit_grammar_location,
>> +       1, 1, 0,
>> +       doc: /* Return the absolute file name of the grammar file for LANGUAGE.
>> +
>> +If LANGUAGE isn't loaded yet, load it first.  If the langauge can't be
>                                                        ^^^^^^^^
> A typo.

Oops (^^;) That’s embarrassing. Ok, I fixed everything and pushed to master.

Also, since the original problem is fixed, closing this report.

Yuan

Subject: 29.1; C++ treesitter mode no coloration
From: David Come <[email-masked]>
To: "[email-masked]" <[email-masked]>
Date: Mon, 24 Jul 2023 09:13:33 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

When opening a C++ file with major mode c++-ts-mode, there is not
coloration

In the Messsage buffer, I see

Error during redisplay: (jit-lock-function 14) signaled (treesit-query-error "Node type error at" 99 "(true) @font-lock-constant-face (false) @font-lock-constant-face (null) @font-lock-constant-face (nullptr) @font-lock-constant-face" "Debug the query with `treesit-query-validate'") [2 times]

In GNU Emacs 29.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.20,
cairo version 1.16.0) of 2023-07-24 built on ubuntu
Repository revision: 31cef9a4eac01fff5ff4fcb89d7e2b7815e93bad
Repository branch: HEAD
Windowing system distributor 'The X.Org Foundation', version 11.0.12013000
System Description: Ubuntu 20.04.6 LTS

Configured using:
'configure --prefix /usr/local --with-native-compilation --without-pgtk
--with-json --with-gnutls --with-rsvg --without-xwidgets
--with-toolkit-scroll-bars --without-xaw3d --without-mailutils
--without-pop --with-tree-sitter 'CFLAGS=-O3 -mtune=native
-march=native -fomit-frame-pointer''

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES
NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3
THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINPUT2
XPM GTK3 ZLIB

Important settings:
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8-unix

Major mode: Magit

Minor modes in effect:
global-company-mode: t
company-mode: t
which-key-mode: t
counsel-projectile-mode: t
global-treesit-auto-mode: t
recentf-mode: t
winner-mode: t
treemacs-icons-dired-mode: t
dap-tooltip-mode: t
dap-ui-many-windows-mode: t
dap-ui-mode: t
lsp-treemacs-sync-mode: t
treemacs-filewatch-mode: t
treemacs-follow-mode: t
treemacs-git-mode: t
treemacs-fringe-indicator-mode: t
dap-auto-configure-mode: t
dap-mode: t
bury-successful-compilation: t
yas-global-mode: t
yas-minor-mode: t
all-the-icons-ivy-rich-mode: t
ivy-rich-mode: t
projectile-mode: t
counsel-mode: t
ivy-mode: t
gcmh-mode: t
global-whitespace-cleanup-mode: t
engine-mode: t
unkillable-scratch: t
dimmer-mode: t
windmove-mode: t
global-undo-tree-mode: t
undo-tree-mode: t
global-git-commit-mode: t
magit-auto-revert-mode: t
global-auto-revert-mode: t
shell-dirtrack-mode: t
server-mode: t
volatile-highlights-mode: t
override-global-mode: t
tooltip-mode: t
global-eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
buffer-read-only: t
column-number-mode: t
line-number-mode: t
indent-tabs-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t

Load-path shadows:
/home/dcome/.emacs.d/elpa/transient-20230723.1411/transient hides /home/dcome/source/emacs-29-rc1/lisp/transient

Features:
(shadow sort mail-extr emacsbug magit-extras display-line-numbers
make-mode tramp tramp-loaddefs trampver tramp-integration tramp-compat
mule-util treemacs-bookmarks treemacs-tags magit-bookmark bookmark
lsp-diagnostics company-cmake company-keywords company-dabbrev-code
company-dabbrev company-files company-yasnippet company-capf company
lsp-headerline lsp-icons lsp-modeline astyle reformatter lsp-ui
lsp-ui-flycheck lsp-ui-doc lsp-ui-imenu lsp-ui-peek lsp-ui-sideline
flycheck lsp-ui-util which-key view lsp-zig lsp-tilt lsp-steep
lsp-svelte lsp-sqls lsp-ruby-syntax-tree lsp-ruby-lsp lsp-yaml lsp-xml
lsp-vimscript lsp-vhdl lsp-volar lsp-vetur lsp-html lsp-verilog lsp-vala
lsp-v lsp-typeprof lsp-ttcn3 lsp-toml lsp-terraform lsp-tex lsp-sorbet
lsp-solargraph lsp-semgrep lsp-rust lsp-rf lsp-ruff-lsp lsp-remark
lsp-racket lsp-r lsp-purescript lsp-pylsp lsp-pyls lsp-pwsh lsp-php
lsp-pls lsp-perlnavigator lsp-perl lsp-openscad lsp-ocaml lsp-magik
lsp-nix lsp-nim lsp-nginx lsp-mint lsp-marksman lsp-markdown lsp-lua
lsp-kotlin lsp-json lsp-javascript lsp-idris lsp-haxe lsp-groovy
lsp-hack lsp-graphql lsp-glsl lsp-gleam lsp-go lsp-completion
lsp-gdscript lsp-fsharp lsp-fortran lsp-eslint lsp-erlang lsp-emmet
lsp-elixir lsp-elm lsp-dockerfile lsp-dhall lsp-d lsp-css lsp-csharp
lsp-crystal lsp-credo lsp-cmake lsp-clojure lsp-semantic-tokens
lsp-clangd lsp-beancount lsp-bash lsp-astro lsp-awk lsp-ansible
lsp-angular lsp-ada lsp-actionscript c-ts-mode hideshow
counsel-projectile oc-basic ol-eww eww url-queue mm-url ol-rmail ol-mhe
ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime
smime dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group
gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail
mail-source utf7 nnoo parse-time gnus-spec gnus-int gnus-range gnus-win
gnus nnheader range ol-docview doc-view jka-compr image-mode exif
ol-bibtex bibtex iso8601 ol-bbdb ol-w3m ol-doi org-link-doi org-agenda
time emacsql emacsql-compiler ghub-graphql treepy gsexp ghub url-http
url-gw url-auth let-alist gnutls treesit-auto tree-sitter-langs
tree-sitter-langs-build tar-mode arc-mode archive-mode tree-sitter-hl
tree-sitter tree-sitter-load tree-sitter-cli tsc tsc-dyn tsc-dyn-get
dired-aux tsc-obsolete register-list dockerfile-mode sh-script smie
executable groovy-mode dts-mode afternoon-theme py-autopep8 lsp-haskell
haskell-mode haskell-cabal haskell-utils haskell-font-lock
haskell-indentation haskell-string haskell-sort-imports haskell-lexeme
haskell-align-imports haskell-complete-module haskell-ghc-support
flymake-proc flymake dabbrev haskell-customize dashboard
dashboard-widgets recentf ob-shell ob-org org-bullets
the-org-mode-expansions org-element org-persist org-id org-refile
avl-tree org org-macro org-pcomplete org-list org-footnote org-faces
org-entities ob-emacs-lisp org-table org-loaddefs cal-menu calendar
cal-loaddefs winner move-text helpful cc-langs trace edebug debug
backtrace info-look find-func elisp-refs ivy-avy link-hint ffap
goto-addr ibuffer-vc treemacs-magit treemacs-icons-dired
treemacs-projectile dap-mouse dap-ui lsp-treemacs lsp-treemacs-generic
lsp-treemacs-themes treemacs-treelib treemacs treemacs-header-line
treemacs-compatibility treemacs-mode treemacs-interface
treemacs-persistence treemacs-filewatch-mode treemacs-follow-mode
treemacs-rendering treemacs-annotations treemacs-async
treemacs-workspaces treemacs-dom treemacs-visuals
treemacs-fringe-indicator pulse treemacs-faces treemacs-icons
treemacs-scope treemacs-themes treemacs-core-utils pfuture hl-line
treemacs-logging treemacs-customization treemacs-macros gdb-mi bindat
gud bui bui-list bui-info bui-entry bui-core bui-history bui-button
bui-utils lsp-lens dap-python dap-mode dap-tasks dap-launch lsp-docker
yaml posframe dap-overlays lsp-mode lsp-protocol tree-widget
network-stream nsm inline ht f f-shortdoc ivy-xref cmake-font-lock
cmake-mode rst bury-successful-compilation qml-mode flyspell ispell
ivy-yasnippet auto-yasnippet haskell-snippets yasnippet-snippets
yasnippet all-the-icons-ivy-rich all-the-icons all-the-icons-faces
data-material data-weathericons data-octicons data-fileicons
data-faicons data-alltheicons ivy-rich projectile ido counsel-fd
counsel-test counsel-test-pytest counsel-test-ctest counsel-test-core
counsel xdg swiper ivy delsel ivy-faces ivy-overlay colir async
mermaid-mode protobuf-mode rotate d2-mode ob ob-tangle ol org-src ob-ref
ob-lob ob-table ob-exp ob-comint ob-core org-cycle org-fold
org-fold-core ob-eval org-keys oc org-compat org-version org-macs
major-mode-hydra kill-or-bury-alive gcmh json-mode json-snatcher
js-mode-expansions js c-ts-common treesit cc-mode-expansions cc-mode
cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars
cc-defs dired-subtree dired-hacks-utils rainbow-mode rainbow-delimiters
smart-forward whitespace-cleanup-mode whitespace engine-mode miniedit
expand-region yaml-mode-expansions text-mode-expansions
er-basic-expansions expand-region-core expand-region-custom zetteldeft
ace-window avy deft iedit iedit-lib goto-line-preview unkillable-scratch
markdown-mode noutline outline dimmer face-remap color windmove
sentence-navigation ample-regexps swap-buffers quail cl annotate rg
files-x rg-info-hack rg-menu rg-ibuffer rg-result wgrep-rg wgrep
rg-history rg-header ibuf-ext ibuffer ibuffer-loaddefs grep compile 0xc
quelpa-use-package quelpa lisp-mnt help-fns radix-tree undo-tree queue
git-modes gitignore-mode gitconfig-mode conf-mode gitattributes-mode
xterm-color magit-lfs diff-hl log-view vc-dir ewoc vc git-link thingatpt
vdiff-magit magit-ediff ediff ediff-merg ediff-mult ediff-wind
ediff-diff ediff-help ediff-init ediff-util git-timemachine vc-git
vc-dispatcher magit-submodule magit-blame magit-stash magit-reflog
magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote
magit-commit magit-sequence magit-notes magit-worktree magit-tag
magit-merge magit-branch magit-reset magit-files magit-refs magit-status
magit magit-repos magit-apply magit-wip magit-log which-func imenu
magit-diff git-commit log-edit message sendmail yank-media puny dired
dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 epg-config
gnus-util text-property-search time-date mm-decode mm-bodies mm-encode
mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr
mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log magit-core
magit-autorevert autorevert filenotify magit-margin magit-transient
magit-process with-editor shell pcomplete comint ansi-osc server
ansi-color magit-mode transient magit-git magit-base magit-section
format-spec cursor-sensor crm compat vdiff smerge-mode diff diff-mode
pretty-hydra s dash repo gitlab-ci-mode yaml-mode use-package-hydra
edmacro kmacro comp comp-cstr warnings etags fileloop generator xref
project advice volatile-highlights paradox paradox-menu
paradox-commit-list hydra ring lv cus-edit pp cus-load icons wid-edit
paradox-execute paradox-github paradox-core spinner cl-extra help-mode
use-package use-package-ensure use-package-delight use-package-diminish
use-package-bind-key bind-key easy-mmode use-package-core finder-inf
0xc-autoloads afternoon-theme-autoloads all-the-icons-ivy-rich-autoloads
all-the-icons-autoloads annotate-autoloads astyle-autoloads
async-autoloads auto-yasnippet-autoloads bm-autoloads
bury-successful-compilation-autoloads clang-format-autoloads
cmake-font-lock-autoloads cmake-mode-autoloads company-autoloads
counsel-fd-autoloads counsel-projectile-autoloads counsel-autoloads
counsel-test-autoloads d2-mode-autoloads dap-mode-autoloads
bui-autoloads dashboard-autoloads diff-hl-autoloads dimmer-autoloads
dired-subtree-autoloads dired-hacks-utils-autoloads
dockerfile-mode-autoloads dts-mode-autoloads easy-hugo-autoloads
engine-mode-autoloads flycheck-autoloads flyspell-correct-ivy-autoloads
flyspell-correct-autoloads forge-autoloads closql-autoloads
emacsql-autoloads gcmh-autoloads ghub-autoloads git-link-autoloads
git-modes-autoloads git-timemachine-autoloads gitlab-ci-mode-autoloads
goto-line-preview-autoloads groovy-mode-autoloads
haskell-snippets-autoloads helpful-autoloads elisp-refs-autoloads
highlight-indent-guides-autoloads ibuffer-vc-autoloads iedit-autoloads
ivy-avy-autoloads ivy-rich-autoloads ivy-xref-autoloads
ivy-yasnippet-autoloads json-mode-autoloads rx json-snatcher-autoloads
kill-or-bury-alive-autoloads kotlin-mode-autoloads
kotlin-ts-mode-autoloads link-hint-autoloads lsp-docker-autoloads
lsp-haskell-autoloads haskell-mode-autoloads lsp-ivy-autoloads
lsp-treemacs-autoloads lsp-ui-autoloads lsp-mode-autoloads f-autoloads
magit-lfs-autoloads major-mode-hydra-autoloads markdown-mode-autoloads
mermaid-mode-autoloads miniedit-autoloads move-text-autoloads
olivetti-autoloads org-bullets-autoloads paradox-autoloads
pipenv-autoloads load-env-vars-autoloads pkg-info-autoloads
epl-autoloads popup-autoloads pretty-hydra-autoloads
protobuf-mode-autoloads py-autopep8-autoloads pyvenv-autoloads
qml-mode-autoloads quelpa-use-package-autoloads quelpa-autoloads
rainbow-delimiters-autoloads rainbow-mode-autoloads
reformatter-autoloads register-list-autoloads repo-autoloads
request-autoloads rg-autoloads rotate-autoloads
sentence-navigation-autoloads ample-regexps-autoloads
shell-pop-autoloads smart-comment-autoloads smart-forward-autoloads
expand-region-autoloads spinner-autoloads swap-buffers-autoloads
swiper-autoloads ivy-autoloads tree-sitter-langs-autoloads
tree-sitter-autoloads treemacs-icons-dired-autoloads
treemacs-magit-autoloads treemacs-projectile-autoloads
treemacs-autoloads cfrs-autoloads posframe-autoloads ht-autoloads
pfuture-autoloads s-autoloads projectile-autoloads treepy-autoloads
treesit-auto-autoloads tsc-autoloads undo-tree-autoloads queue-autoloads
unkillable-scratch-autoloads use-package-hydra-autoloads
vdiff-magit-autoloads magit-autoloads pcase magit-section-autoloads
git-commit-autoloads transient-autoloads dash-autoloads vdiff-autoloads
hydra-autoloads lv-autoloads visual-regexp-steroids-autoloads
visual-regexp-autoloads volatile-highlights-autoloads wgrep-autoloads
which-key-autoloads whitespace-cleanup-mode-autoloads
with-editor-autoloads info compat-autoloads xterm-color-autoloads
yaml-autoloads yaml-mode-autoloads yasnippet-snippets-autoloads
yasnippet-autoloads zetteldeft-autoloads ace-window-autoloads
avy-autoloads deft-autoloads package browse-url url url-proxy
url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs password-cache json subr-x
map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc
iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode lisp-mode prog-mode register
page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads dbusbind inotify lcms2 dynamic-setting system-font-setting
font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty
make-network-process native-compile emacs)

Memory information:
((conses 16 1459818 925289)
(symbols 48 74217 152)
(strings 32 443096 123894)
(string-bytes 1 15926874)
(vectors 16 156046)
(vector-slots 8 2896484 996131)
(floats 8 2121 6640)
(intervals 56 12743 9883)
(buffers 984 42))