[Bug 291998] editors/zed: workaround for GDB issue

From: <bugzilla-noreply_at_freebsd.org>
Date: Sun, 28 Dec 2025 12:44:35 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291998

            Bug ID: 291998
           Summary: editors/zed: workaround for GDB issue
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: tagattie@FreeBSD.org
          Reporter: mizhka@FreeBSD.org
          Assignee: tagattie@FreeBSD.org
             Flags: maintainer-feedback?(tagattie@FreeBSD.org)

Created attachment 266602
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=266602&action=edit
git format-patch

Thank you, Tagato-san, for your incredible effort to port editors/zed! 

Zed editor provides 2 builtin debuggers for C/C++ languages: CodeLLDB and GDB.
CodeLLDB is not yet ported to FreeBSD, so it's not available option. GDB is
supported by DAP protocol, but as of now there is issue common for all
operating systems: 

https://github.com/zed-industries/zed/issues/41753

Zed sends request "setExceptionalBreakpoints", but GDB (before v17) handles
incorrectly. Actual version in ports tree is 15, so this issue is blocker for
usage of C/C++ debuggers.

The attempt to skip "setExceptionalBreakpoints" makes GDB usable and it's
pretty nice, so it doesn't cover all cases. For instance, if there is preset
breakpoints before starting of debugging session, session finishes with same
error. If there is no breakpoints before starting, it works fine. Also it works
fine with option "stopAtBeginningOfMainSubprogram" forcing program to stop
before execution, so it allows to set breakpoints as you wish after start of
debugging session. I suppose it's good enough for debugging. 

Attached git patch. At least it works for me (FreeBSD 16-current,
ports-master). It's temporary and very dirty workaround ;)

Please feel free to ask any question.

Best regards,
   Michael

-- 
You are receiving this mail because:
You are the assignee for the bug.