diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 5abebaca0f..0b27e2c1bb 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,15 @@ +2014-07-23 Tom Tromey + + * make-target-delegates ($ARGS_PART): Match trailing close paren. + ($INTRO_PART): Don't match whitespace. + ($METHOD_TRAILER): Move earlier. Remove trailing semicolon and + argument matching. + ($METHOD): Add $METHOD_TRAILER. + (trim): Rewrite. + (scan_target_h): New sub. + Change main loop not to collect state. + * target-delegates.c: Rebuild. + 2014-07-23 Gary Benson * cp-support.c (gdb_demangle): Fix build on systems without diff --git a/gdb/make-target-delegates b/gdb/make-target-delegates index f09f89d935..28db447b36 100755 --- a/gdb/make-target-delegates +++ b/gdb/make-target-delegates @@ -31,10 +31,10 @@ $ENDER = qr,^\s*};$,; $SYMBOL = qr,[a-zA-Z_][a-zA-Z0-9_]*,; # Match the name part of a method in struct target_ops. $NAME_PART = qr,\(\*(?${SYMBOL}+)\)\s,; -# Match the start of arguments to a method. -$ARGS_PART = qr,(?\(.*)$,; -# Match indentation. -$INTRO_PART = qr,^\s*,; +# Match the arguments to a method. +$ARGS_PART = qr,(?\(.*\)),; +# We strip the indentation so here we only need the caret. +$INTRO_PART = qr,^,; # Match the return type when it is "ordinary". $SIMPLE_RETURN_PART = qr,[^\(]+,; @@ -44,17 +44,22 @@ $VEC_RETURN_PART = qr,VEC\s*\([^\)]+\)[^\(]*,; # Match the TARGET_DEFAULT_* attribute for a method. $TARGET_DEFAULT_PART = qr,TARGET_DEFAULT_(?