This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA 14/22] Replace two xmallocs with vector


>>>>> "Pedro" == Pedro Alves <palves@redhat.com> writes:

>> * cli/cli-dump.c (dump_memory_to_file): Use std::vector.
>> (restore_binary_file): Likewise.

Pedro> As general guideline, for these cases where we only need to
Pedro> construct a buffer once (never resize/reallocate) and we don't
Pedro> care about the initial contents of the buffer, I think
Pedro>   unique_ptr<char[]> buf (new char[size]);
Pedro> ends up being more efficient, because std::vector
Pedro> default/zero initializes its elements, which is unnecessary since
Pedro> we're about to write into the buffer anyway.

Pedro> WDYT?

It's fine with me.

Often the performance doesn't matter, and std::vector is safe to use.
On the other hand XNEWVEC isn't really unsafe -- maybe just mildly less
clear to gdb newbies.

Tom


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]