cpp-common/uuid-view: use string::operator[] instead of string::data to access internal buffer
Using UuidView::string fails with:
CXX ctf-ir.lo
In file included from /home/smarchi/src/babeltrace/src/cpp-common/bt2/clock-class.hpp:20,
from /home/smarchi/src/babeltrace/src/cpp-common/bt2/trace-ir.hpp:19,
from /home/smarchi/src/babeltrace/src/plugins/ctf/common/src/metadata/ctf-ir.hpp:18,
from /home/smarchi/src/babeltrace/src/plugins/ctf/common/src/metadata/ctf-ir.cpp:8:
/home/smarchi/src/babeltrace/src/cpp-common/uuid-view.hpp: In member function 'std::string bt2_common::UuidView::str() const':
/home/smarchi/src/babeltrace/src/cpp-common/uuid-view.hpp:57:38: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
57 | bt_uuid_to_str(_mUuid, s.data());
| ~~~~~~^~
| |
| const char*
In file included from /home/smarchi/src/babeltrace/src/plugins/ctf/common/src/metadata/ctf-ir.hpp:15:
/home/smarchi/src/babeltrace/src/common/uuid.h:40:62: note: initializing argument 2 of 'void bt_uuid_to_str(const uint8_t*, char*)'
40 | BT_HIDDEN void bt_uuid_to_str(const bt_uuid_t uuid_in, char *str_out);
| ~~~~~~^~~~~~~
This is because the data method only has a const version in C++11:
https://en.cppreference.com/w/cpp/string/basic_string/data
It therefore can't be used to modify the content of the string. Use
operator[] instead.
Change-Id: I3bd9c9756c4e79856a5f0f0c7d8fa14e19c1eadd
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/10805
Tested-by: jenkins <jenkins@lttng.org>
CI-Build: Philippe Proulx <eeppeliteloop@gmail.com>
Reviewed-by: Philippe Proulx <eeppeliteloop@gmail.com>
This page took 0.026703 seconds and 4 git commands to generate.