This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb] PR19896, Segmentation fault on bad input
- From: Alan Modra <amodra at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 2 Apr 2016 07:17:19 -0000
- Subject: [binutils-gdb] PR19896, Segmentation fault on bad input
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=62bd6b5fa4697a0feef745f3ea79a9f2a28c163f
commit 62bd6b5fa4697a0feef745f3ea79a9f2a28c163f
Author: Alan Modra <amodra@gmail.com>
Date: Sat Apr 2 17:17:26 2016 +1030
PR19896, Segmentation fault on bad input
PR 19896
* read.c (assign_symbol): Consume rest of line after an error
rather than continuing to process the line.
Diff:
---
gas/ChangeLog | 6 ++++++
gas/read.c | 4 +++-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/gas/ChangeLog b/gas/ChangeLog
index dce15a1..6c76391 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2016-04-02 Alan Modra <amodra@gmail.com>
+
+ PR 19896
+ * read.c (assign_symbol): Consume rest of line after an error
+ rather than continuing to process the line.
+
2016-04-01 Andrew Burgess <andrew.burgess@embecosm.com>
* config/tc-arc.h (MAX_FLAG_NAME_LENGHT): Rename to...
diff --git a/gas/read.c b/gas/read.c
index 35d44c1..a940ff3 100644
--- a/gas/read.c
+++ b/gas/read.c
@@ -3255,7 +3255,9 @@ assign_symbol (char *name, int mode)
&& !S_CAN_BE_REDEFINED (symbolP))
{
as_bad (_("symbol `%s' is already defined"), name);
- symbolP = symbol_clone (symbolP, 0);
+ ignore_rest_of_line ();
+ input_line_pointer--;
+ return;
}
/* If the symbol is volatile, copy the symbol and replace the
original with the copy, so that previous uses of the symbol will