This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb] Bug 19113 - read.c stringer assertion
- From: Alan Modra <amodra at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 10 Oct 2015 00:25:07 -0000
- Subject: [binutils-gdb] Bug 19113 - read.c stringer assertion
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d98007761887582f8ab25414ba5784eb238d06d8
commit d98007761887582f8ab25414ba5784eb238d06d8
Author: Alan Modra <amodra@gmail.com>
Date: Sat Oct 10 10:48:05 2015 +1030
Bug 19113 - read.c stringer assertion
Fails due to signed char promotion.
PR gas/19113
* read.c (next_char_of_string): Mask char after escape. Use
CHAR_MASK rather than 0xff.
Diff:
---
gas/ChangeLog | 6 ++++++
gas/read.c | 6 +++---
2 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 1d08101..90b358b 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2015-10-10 Alan Modra <amodra@gmail.com>
+
+ PR gas/19113
+ * read.c (next_char_of_string): Mask char after escape. Use
+ CHAR_MASK rather than 0xff.
+
2015-10-07 Yao Qi <yao.qi@linaro.org>
* config/tc-aarch64.c (md_begin): Access field 'name' rather
diff --git a/gas/read.c b/gas/read.c
index a3e83c3..53440de 100644
--- a/gas/read.c
+++ b/gas/read.c
@@ -5415,7 +5415,7 @@ next_char_of_string (void)
#ifndef NO_STRING_ESCAPES
case '\\':
- switch (c = *input_line_pointer++)
+ switch (c = *input_line_pointer++ & CHAR_MASK)
{
case 'b':
c = '\b';
@@ -5466,7 +5466,7 @@ next_char_of_string (void)
number = number * 8 + c - '0';
}
- c = number & 0xff;
+ c = number & CHAR_MASK;
}
--input_line_pointer;
break;
@@ -5488,7 +5488,7 @@ next_char_of_string (void)
number = number * 16 + c - 'a' + 10;
c = *input_line_pointer++;
}
- c = number & 0xff;
+ c = number & CHAR_MASK;
--input_line_pointer;
}
break;