From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 129293 invoked by alias); 26 Aug 2018 16:54:14 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 129267 invoked by uid 89); 26 Aug 2018 16:54:13 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-4.0 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=Updates, Hx-languages-length:2010, Eli, eli X-HELO: mailsec113.isp.belgacom.be Received: from mailsec113.isp.belgacom.be (HELO mailsec113.isp.belgacom.be) (195.238.20.109) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sun, 26 Aug 2018 16:54:10 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=skynet.be; i=@skynet.be; q=dns/txt; s=securemail; t=1535302450; x=1566838450; h=from:to:subject:date:message-id; bh=5Mt1twtJPB/ZiH8PQq+K5zMVvLmStOPmAywHiHoHzZU=; b=DN8gncvPjuf7QtkawYt39kSZTYJyszle+sMtyFpt3G3ih6sIZ6PU1Uho nw7JcjJUmm6BRM7NVSAAfGurh12Tnw==; Received: from 217.24-133-109.adsl-dyn.isp.belgacom.be (HELO md.home) ([109.133.24.217]) by relay.skynet.be with ESMTP/TLS/DHE-RSA-AES128-GCM-SHA256; 26 Aug 2018 18:54:08 +0200 From: Philippe Waroquiers To: gdb-patches@sourceware.org Subject: [RFAv2 0/6] info [args|functions|locals|variables] [-q] [-t TYPEREGEXP] [NAMEREGEXP] Date: Sun, 26 Aug 2018 16:54:00 -0000 Message-Id: <20180826165359.1600-1-philippe.waroquiers@skynet.be> X-IsSubscribed: yes X-SW-Source: 2018-08/txt/msg00629.txt.bz2 [RFAv2 0/6] info [args|functions|locals|variables] [-q] [-t TYPEREGEXP] [NAMEREGEXP] This is a follow up to the first RFA. The documentation parts were already reviewed by Eli, other parts were not reviewed yet. Compared to the first RFA, the changes are a rebase to the last trunk version, the removal of an unused local variable, and some updates to the new info_qt.exp test to ensure unicity of test names. Thanks. This patch series adds flags and/or arguments [-q] [-t TYPEREGEXP] [NAMEREGEXP] to the commands info [args|functions|locals|variables] The additional arguments allow to more precisely specify what to print. As these new features can usefully be combined with frame apply and thread apply, the documentation gives examples combining the above and the 'thread apply' and 'frame apply' commands. Some examples: * print functions returning an int: info functions -t '^int (' * print local variables having pthread_t type info locals -t pthread_t * print global variables having type 'struct addrinfo' info var -t 'struct addrinfo' * print args that are likely file descriptors info arg -t int .*fd.* Below examples are combined with the 'thread/frame apply' commands: * Assuming lock_something_t is an RAII type, show all locks: thread apply all -s frame apply all -s info locals -q -t lock_something_t or shorter equivalent: tfaas i lo -q -t lock_something_t * show frames and args having an arg with type matchin std::.*map so likely std::map or std::unordered_map frame apply all -s info args -q std::.*map The code, documentation, NEWS, test and ChangeLog are (supposed to be) complete. The changes in RFA v2 are: * Removal of an unused local variable. * Updates to the test info_qt.exp, to ensure no duplicate in test names. Compared to the RFC, the changes in RFA v1 are: * All comments of Eli on the documentation have been handled. * ChangeLog entries added in commit messages * Test added.