[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: lldb support
From: |
Eli Zaretskii |
Subject: |
Re: lldb support |
Date: |
Sat, 12 Nov 2016 09:47:17 +0200 |
> From: Toon Claes <address@hidden>
> Cc: address@hidden, address@hidden, address@hidden, address@hidden
> Date: Sat, 12 Nov 2016 08:04:39 +0100
>
> > Doesn't lldb-mi accept the --interpreter=mi argument on its command
> > line? That would be strange, since it's supposed to be a
> > compatibility shim, and is advertised to work with Eclipse.
>
> Yes, it does support the argument, but gdb-mi.el does not seem to
> recognize it.
What do you mean by "doesn't recognize"? gdb-mi.el doesn't look at
the invocation command, it looks at the 1st response returned by the
debugger. See the function gdb--check-interpreter in gdb-mi.el.
Evidently, the response produced by lldb-mi doesn't match the criteria
there. Can you look at the value of 'string' in that function and
tell what it is?
> > If you disable this test in gdb-mi.el, do you get better results?
>
> These are the errors I am getting when trying to set a breakpoint and
> running the process.
>
> Command: break hello.swift:19
> Command: -exec-run
> Driver. Received command '5-file-list-exec-source-files'. It was not handled.
> Command 'file-list-exec-source-files' not in Command Factory
> Driver. Received command '6-file-list-exec-source-file'. It was not handled.
> Command 'file-list-exec-source-file' not in Command Factory
> Command 'stack-info-frame'. Invalid process during debug session
> Driver. Received command '10-break-list'. It was not handled. Command
> 'break-list' not in Command Factory
> Driver. Received command '12-break-list'. It was not handled. Command
> 'break-list' not in Command Factory
> Driver. Received command '14-break-list'. It was not handled. Command
> 'break-list' not in Command Factory
> Driver. Received command '16-break-list'. It was not handled. Command
> 'break-list' not in Command Factory
> Driver. Received command '18-break-list'. It was not handled. Command
> 'break-list' not in Command Factory
I guess lldb-mi is not yet up to speed in its support of the MI
protocol, if it doesn't even support the basic MI input syntax and/or
the '-break-list' command. The description of the MI protocol input
(in the GDB manual) clearly says that an MI command has the following
formal syntax:
'MI-COMMAND ==>'
'[ TOKEN ] "-" OPERATION ( " " OPTION )* [ " --" ] ( " " PARAMETER )* NL'
So it looks like lldb-mi either didn't implement the TOKEN part, or
doesn't yet support the '-break-list' command itself. This TOKEN part
is very important for the front-end to know which response of the
debugger corresponds to which front-end command. And '-break-list'
is, of course, a very important command. Perhaps consider reporting
this to the lldb-mi developers, as these are significant omissions,
and make the tool not very useful with front-ends, to say the least.
- Re: lldb support, (continued)
- Re: lldb support, Perry E. Metzger, 2016/11/09
- Re: lldb support, Perry E. Metzger, 2016/11/09
- Re: lldb support, Eli Zaretskii, 2016/11/09
- Re: lldb support, Toon Claes, 2016/11/10
- Re: lldb support, Eli Zaretskii, 2016/11/10
- Re: lldb support, Toon Claes, 2016/11/10
- Re: lldb support, Eli Zaretskii, 2016/11/10
- Re: lldb support, Toon Claes, 2016/11/12
- Re: lldb support,
Eli Zaretskii <=
- Re: lldb support, Perry E. Metzger, 2016/11/10
- Re: lldb support, Eli Zaretskii, 2016/11/10
- Re: lldb support, John Wiegley, 2016/11/08
- Re: lldb support, Perry E. Metzger, 2016/11/08
- Re: lldb support, Richard Stallman, 2016/11/09
- Re: lldb support, John Mastro, 2016/11/09