diff options
author | Pedro Alves <palves@redhat.com> | 2016-11-09 14:53:58 +0000 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2016-11-09 14:53:58 +0000 |
commit | 7a63494a0df60cf71b9cf03c4eb8f24719d03e66 (patch) | |
tree | 5b59f39a837aaa33f12ddb718499ad44c8a1650f /gdb/main.c | |
parent | 8c84bffb45ac63b98fffc5c1a492c2eb7e4f27e2 (diff) | |
download | gdb-7a63494a0df60cf71b9cf03c4eb8f24719d03e66.zip gdb-7a63494a0df60cf71b9cf03c4eb8f24719d03e66.tar.gz gdb-7a63494a0df60cf71b9cf03c4eb8f24719d03e66.tar.bz2 |
gdb: Use vector::emplace_back
Now that we require C++11, we can use vector::emplace_back to
construct elements in place instead of constructing and then copying.
gdb/ChangeLog:
2016-11-09 Pedro Alves <palves@redhat.com>
* main.c (struct cmdarg): Add constructor.
(captured_main_1): Use vector::emplace_back.
* tracepoint.c (collection_list::add_memrange): Likewise.
Diffstat (limited to 'gdb/main.c')
-rw-r--r-- | gdb/main.c | 31 |
1 files changed, 10 insertions, 21 deletions
@@ -444,7 +444,12 @@ enum cmdarg_kind }; /* Arguments of --command option and its counterpart. */ -struct cmdarg { +struct cmdarg +{ + cmdarg (cmdarg_kind type_, char *string_) + : type (type_), string (string_) + {} + /* Type of this option. */ enum cmdarg_kind type; @@ -745,32 +750,16 @@ captured_main_1 (struct captured_main_args *context) pidarg = optarg; break; case 'x': - { - struct cmdarg cmdarg = { CMDARG_FILE, optarg }; - - cmdarg_vec.push_back (cmdarg); - } + cmdarg_vec.emplace_back (CMDARG_FILE, optarg); break; case 'X': - { - struct cmdarg cmdarg = { CMDARG_COMMAND, optarg }; - - cmdarg_vec.push_back (cmdarg); - } + cmdarg_vec.emplace_back (CMDARG_COMMAND, optarg); break; case OPT_IX: - { - struct cmdarg cmdarg = { CMDARG_INIT_FILE, optarg }; - - cmdarg_vec.push_back (cmdarg); - } + cmdarg_vec.emplace_back (CMDARG_INIT_FILE, optarg); break; case OPT_IEX: - { - struct cmdarg cmdarg = { CMDARG_INIT_COMMAND, optarg }; - - cmdarg_vec.push_back (cmdarg); - } + cmdarg_vec.emplace_back (CMDARG_INIT_COMMAND, optarg); break; case 'B': batch_flag = batch_silent = 1; |