From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5423 invoked by alias); 27 Mar 2008 16:49:38 -0000 Received: (qmail 5415 invoked by uid 22791); 27 Mar 2008 16:49:37 -0000 X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (65.74.133.4) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 27 Mar 2008 16:49:20 +0000 Received: (qmail 25567 invoked from network); 27 Mar 2008 16:49:18 -0000 Received: from unknown (HELO localhost) (vladimir@127.0.0.2) by mail.codesourcery.com with ESMTPA; 27 Mar 2008 16:49:18 -0000 From: Vladimir Prus To: gdb@sources.redhat.com Subject: Calling inferior functions and MI notification Date: Thu, 27 Mar 2008 19:02:00 -0000 User-Agent: KMail/1.9.6 (enterprise 0.20070907.709405) MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200803271949.10914.vladimir@codesourcery.com> Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2008-03/txt/msg00266.txt.bz2 Hello, presently, when a GDB command calls an inferior function, for example: -data-evaluate-expression foo() the MI frontend is not informed in any way. So, should the function get stuck, the user will not even understand that inferior is running, and will have hard time figuring that he should click the "interrupt" button, or whatever. Ideally, the output should be like this: (gdb) -data-evaluate-expression foo() *running,thread-id="1" *stopped ^done,result="100" However, I believe that making such a change will immediately break both KDevelop and Eclipse CDT -- because whenever they see *stopped, a full refresh of everything is done. If any variable object involves function call, *stopped will be emitted again, and cause another refresh. At least, I cannot see anything protecting from that. So, we have two solutions: 1. Just don't emit those notification for inferior function calls. 2. Don't emit them by default. Provide a command to enable this new behaviour. Comments or better suggestions? - Volodya