Boost logo

Boost :

From: Дмитрий Архипов (grisumbras_at_[hidden])
Date: 2024-07-01 15:16:28


пн, 1 июл. 2024 г. в 17:45, Niall Douglas via Boost <boost_at_[hidden]>:
>
> Dear Boost,
>
> The biggest new feature to land into Outcome since it went ABI stable is
> inline GDB pretty printing support, whereby we embed into all binaries
> using Outcome the Python script to display the state of
> `result<>/outcome<>`. As Outcome uses a layered inheritance technique to
> match triviality of member functions from its configured types, having
> to click down through the layers to discover the state was always
> frustrating. MSVC has long shipped with a visualiser to eliminate this,
> so now support for GDB matches MSVC support.
>
> The relevant implementation file can be found at:
>
> https://github.com/boostorg/outcome/blob/master/include/boost/outcome/outcome_gdb.h

This is a very neat trick. I have a WIP branch with GDB printers for
JSON (https://github.com/boostorg/json/pull/733). The branch hasn't
been merged yet mostly because I couldn't decide on the best way to
deploy the script. And this trick trivializes that problem


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk