Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [RFAv2 0/6] info [args|functions|locals|variables] [-q] [-t TYPEREGEXP] [NAMEREGEXP]
@ 2018-08-26 16:54 Philippe Waroquiers
  2018-08-26 16:54 ` [RFAv2 5/6] Announce changes in NEWS to info [args|functions|locals|variables] Philippe Waroquiers
                   ` (7 more replies)
  0 siblings, 8 replies; 19+ messages in thread
From: Philippe Waroquiers @ 2018-08-26 16:54 UTC (permalink / raw)
  To: gdb-patches

[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.




^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2018-09-25  4:37 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-26 16:54 [RFAv2 0/6] info [args|functions|locals|variables] [-q] [-t TYPEREGEXP] [NAMEREGEXP] Philippe Waroquiers
2018-08-26 16:54 ` [RFAv2 5/6] Announce changes in NEWS to info [args|functions|locals|variables] Philippe Waroquiers
2018-08-26 18:21   ` Eli Zaretskii
2018-08-27  4:39     ` Philippe Waroquiers
2018-08-27 14:59       ` Eli Zaretskii
2018-08-26 16:54 ` [RFAv2 6/6] Add a test case for info args|functions|locals|variables [-q] [-t TYPEREGEXP] [NAMEREGEXP] Philippe Waroquiers
2018-08-26 16:54 ` [RFAv2 2/6] Make struct type_print_options default_ptype_flags non static Philippe Waroquiers
2018-08-26 16:54 ` [RFAv2 1/6] New cli-utils.h/.c function extract_info_print_args Philippe Waroquiers
2018-09-18 15:31   ` Tom Tromey
2018-09-23 20:16     ` Philippe Waroquiers
2018-09-24 13:07       ` Tom Tromey
2018-09-25  4:37         ` Philippe Waroquiers
2018-08-26 16:54 ` [RFAv2 4/6] Document changes to info [args|functions|locals|variables] Philippe Waroquiers
2018-08-26 18:19   ` Eli Zaretskii
2018-08-26 16:54 ` [RFAv2 3/6] Add [-q] [-t TYPEREGEXP] [NAMEREGEXP] args " Philippe Waroquiers
2018-09-18 15:52   ` Tom Tromey
2018-09-23 21:34     ` Philippe Waroquiers
2018-09-06 20:16 ` PING Re: [RFAv2 0/6] info [args|functions|locals|variables] [-q] [-t TYPEREGEXP] [NAMEREGEXP] Philippe Waroquiers
2018-09-13 19:27 ` PING^2 " Philippe Waroquiers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox