Remove usage of VEC(char_ptr) in gdbscm_parse_function_args
This is a straightforward replacement, no change in behavior are intended/expected. This is the last usage of VEC(char_ptr), so it can now be removed. gdb/ChangeLog: * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC with std::vector. * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
This commit is contained in:
parent
17d08cd413
commit
d8611974cf
@ -1,3 +1,9 @@
|
||||
2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
|
||||
|
||||
* guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
|
||||
with std::vector.
|
||||
* common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
|
||||
|
||||
2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
|
||||
|
||||
* tracepoint.h (struct uploaded_tp): Initialize fields.
|
||||
|
@ -25,8 +25,6 @@
|
||||
typedef char *char_ptr;
|
||||
typedef const char *const_char_ptr;
|
||||
|
||||
DEF_VEC_P (char_ptr);
|
||||
|
||||
DEF_VEC_P (const_char_ptr);
|
||||
|
||||
/* Split STR, a list of DELIMITER-separated fields, into a char pointer vector.
|
||||
|
@ -386,7 +386,7 @@ gdbscm_parse_function_args (const char *func_name,
|
||||
SCM status;
|
||||
SCM rest = SCM_EOL;
|
||||
/* Keep track of malloc'd strings. We need to free them upon error. */
|
||||
VEC (char_ptr) *allocated_strings = NULL;
|
||||
std::vector<char *> allocated_strings;
|
||||
char *ptr;
|
||||
|
||||
have_rest = validate_arg_format (format);
|
||||
@ -419,7 +419,7 @@ gdbscm_parse_function_args (const char *func_name,
|
||||
if (!gdbscm_is_false (status))
|
||||
goto fail;
|
||||
if (*p == 's')
|
||||
VEC_safe_push (char_ptr, allocated_strings, *(char **) arg_ptr);
|
||||
allocated_strings.push_back (*(char **) arg_ptr);
|
||||
}
|
||||
++p;
|
||||
++position;
|
||||
@ -485,10 +485,7 @@ gdbscm_parse_function_args (const char *func_name,
|
||||
if (!gdbscm_is_false (status))
|
||||
goto fail;
|
||||
if (p[i] == 's')
|
||||
{
|
||||
VEC_safe_push (char_ptr, allocated_strings,
|
||||
*(char **) arg_ptr);
|
||||
}
|
||||
allocated_strings.push_back (*(char **) arg_ptr);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -516,14 +513,12 @@ gdbscm_parse_function_args (const char *func_name,
|
||||
}
|
||||
|
||||
va_end (args);
|
||||
VEC_free (char_ptr, allocated_strings);
|
||||
return;
|
||||
|
||||
fail:
|
||||
va_end (args);
|
||||
for (i = 0; VEC_iterate (char_ptr, allocated_strings, i, ptr); ++i)
|
||||
for (char *ptr : allocated_strings)
|
||||
xfree (ptr);
|
||||
VEC_free (char_ptr, allocated_strings);
|
||||
gdbscm_throw (status);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user