From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from eggs.gnu.org (eggs.gnu.org [IPv6:2001:470:142:3::10]) by sourceware.org (Postfix) with ESMTPS id 38D993954084 for ; Mon, 19 Jul 2021 15:49:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 38D993954084 Received: from fencepost.gnu.org ([2001:470:142:3::e]:46884) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m5VWR-0005KP-QG for gdb@sourceware.org; Mon, 19 Jul 2021 11:49:35 -0400 Received: from ip5f5a897f.dynamic.kabel-deutschland.de ([95.90.137.127]:59864 helo=[192.168.111.41]) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m5VWR-0000Qy-Iz for gdb@sourceware.org; Mon, 19 Jul 2021 11:49:35 -0400 From: Simon Sobisch To: gdb@sourceware.org References: Subject: How/where is the mi watchpoint-trigger / EXEC_ASYNC_WATCHPOINT_TRIGGER raised? Message-ID: <532367b4-bd4c-8468-03a5-418591bbefb3@gnu.org> Date: Mon, 19 Jul 2021 17:49:32 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.12.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.8 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gdb@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 19 Jul 2021 15:49:39 -0000 I've found the definition in mi/mi-common.h and the translation in mi/mi-common.c, but I have no clue: 1 Understanding GDB: Where is it actually raised? (I _assume_ it somewhere happens if a watchpoint's stop method returns True? 2 Extending GDB: Can I manually trigger the event from a breakpoint? The reasoning behind this is that my watchpoint implementation always returns False after setting a breakpoint at the place where the user "expects" to see the change (when returning to user code, not multiple times in the library code). While it "looks" nice on the GDB console MI-Frontends don't get any watchpoint events that way. Thanks Simon