From c06040338abf46fe9e7e4bd656e63e6f2543a804 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Wed, 22 Jun 2022 15:11:59 +0200 Subject: [PATCH] fix(lsp,tree-sitter): void-function lsp!/tree-sitter! errors These are autodefs, meaning they should be defined whether or not the containing module is enabled, but they should no-op when it's disabled, by defining a no-op macro with the same name. However, lsp! and tree-sitter! are meant to be used as hooks, and you can't use macros as hooks, so you get void-function errors when they are used as such. This ensures they are properly defined as no-op functions in those cases. I.e. ;;;###autodef FORM FORM is used instead of a no-op macro if the parent module is disabled. --- modules/tools/lsp/autoload/common.el | 2 +- modules/tools/tree-sitter/autoload.el | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/tools/lsp/autoload/common.el b/modules/tools/lsp/autoload/common.el index 7e2450d86..cfa8c9a2e 100644 --- a/modules/tools/lsp/autoload/common.el +++ b/modules/tools/lsp/autoload/common.el @@ -1,6 +1,6 @@ ;;; tools/lsp/autoload/common.el -*- lexical-binding: t; -*- -;;;###autodef +;;;###autodef (fset 'lsp! #'ignore) (defun lsp! () "Dispatch to call the currently used lsp client entrypoint" (interactive) diff --git a/modules/tools/tree-sitter/autoload.el b/modules/tools/tree-sitter/autoload.el index 608ed77bf..a4be17ac2 100644 --- a/modules/tools/tree-sitter/autoload.el +++ b/modules/tools/tree-sitter/autoload.el @@ -1,6 +1,6 @@ ;;; tools/tree-sitter/autoload.el -*- lexical-binding: t; -*- -;;;###autodef +;;;###autodef (fset 'tree-sitter! #'ignore) (defun tree-sitter! () (interactive) (turn-on-tree-sitter-mode))