gdb: add string_file::release method
A common pattern for string_file is to want to move out the internal string buffer, because it is the result of the computation that we want to return. It is the reason why string_file::string returns a non-const reference, as explained in the comment. I think it would make sense to have a dedicated method for that instead and make string_file::string return a const reference. This allows removing the explicit std::move in the typical case. Note that compile_program::compute was missing a move, meaning that the resulting string was copied. With the new version, it's not possible to forget to move. Change-Id: Ieaefa35b73daa7930b2f3a26988b6e3b4121bb79
This commit is contained in:
parent
b583c328e7
commit
5d10a2041e
17 changed files with 37 additions and 36 deletions
|
@ -6915,7 +6915,7 @@ type_as_string (struct type *type)
|
|||
|
||||
type_print (type, "", &tmp_stream, -1);
|
||||
|
||||
return std::move (tmp_stream.string ());
|
||||
return tmp_stream.release ();
|
||||
}
|
||||
|
||||
/* Given a type TYPE, look up the type of the component of type named NAME.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue