[0840] 消除 diff-text 模块启动时的 conditional master routine warning#4039
Merged
Conversation
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
tm-define 宏链依赖展开期全局 cur-conds 累积,模块内若同时存在带 :require 的 tm-define(kbd-tab/keyboard-press/mouse-event 重载), 会让首次定义的 master routine 在 tm-define-overloaded 实际展开时 读到被污染的 cur-conds,误触发 "conditional master routine" warning。 is-diff-active?/diff-enable?/diff-feedback/trigger-diff-text/ accept-diff/reject-diff 没有 :require 也不被重载,改为 define-public 绕开该机制,语义不变。 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
TeXmacs/progs/generic/diff-text.scm时报 6 条warning: conditional master routine ...(is-diff-active?/diff-enable?/diff-feedback/trigger-diff-text/accept-diff/reject-diff)。tm-define宏链依赖展开期全局cur-conds/cur-props累积;模块内若同时存在带:require的tm-define(kbd-tab/keyboard-press/mouse-event重载),tm-define-overloaded实际展开时读到的cur-conds已被污染,导致首次定义的 master routine 被误判为带 condition(参见TeXmacs/progs/kernel/texmacs/tm-define.scm:333-336)。:require、也不被别处重载,改为define-public绕开tm-define机制;tm-define实现未改。语义不变。Test plan
xmake b stem构建通过build/linux/x86_64/release/moganstem -headless -d -x "(quit-TeXmacs)"启动日志不再出现conditional master routine告警devel/0840.md§3.2 交互流程验证 diff-text 功能仍正常🤖 Generated with Claude Code