summaryrefslogtreecommitdiff
path: root/gcc/cp/parser.c
diff options
context:
space:
mode:
authorghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-25 19:19:42 +0000
committerghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-25 19:19:42 +0000
commitdea3189b45f05f83dc99494d66b5a4311c811ce6 (patch)
tree25657045a0e1f680a00555098079cb87bb9d1384 /gcc/cp/parser.c
parentaae87fc346d89bc5cf107a45dd5bade361b16533 (diff)
downloadgcc-dea3189b45f05f83dc99494d66b5a4311c811ce6.tar.gz
* cselib.c (entry_and_rtx_equal_p): Constify.
* gengtype.c (output_mangled_typename, write_types, write_local): Likewise. * gengtype.h (const_type_p): New. * see.c (eq_descriptor_extension, hash_descriptor_extension): Constify. * tlink.c (scan_linker_output): De-constify. * tree-ssa-loop-im.c (memref_eq): Constify. * tree-ssa-structalias.c (const_shared_bitmap_info_t): New. (shared_bitmap_hash, shared_bitmap_eq): Constify. cp: * parser.c (cp_parser_string_literal, cp_parser_sizeof_operand): Constify. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126926 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/parser.c')
-rw-r--r--gcc/cp/parser.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 458d300c331..b8d2b15a083 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -2896,7 +2896,7 @@ cp_parser_string_literal (cp_parser *parser, bool translate, bool wide_ok)
{
cp_lexer_consume_token (parser->lexer);
count++;
- str.text = (unsigned char *)TREE_STRING_POINTER (tok->u.value);
+ str.text = (const unsigned char *)TREE_STRING_POINTER (tok->u.value);
str.len = TREE_STRING_LENGTH (tok->u.value);
if (tok->type == CPP_WSTRING)
wide = true;
@@ -17111,6 +17111,7 @@ cp_parser_sizeof_operand (cp_parser* parser, enum rid keyword)
static const char *format;
tree expr = NULL_TREE;
const char *saved_message;
+ char *tmp;
bool saved_integral_constant_expression_p;
bool saved_non_integral_constant_expression_p;
bool pack_expansion_p = false;
@@ -17123,12 +17124,11 @@ cp_parser_sizeof_operand (cp_parser* parser, enum rid keyword)
old message. */
saved_message = parser->type_definition_forbidden_message;
/* And create the new one. */
- parser->type_definition_forbidden_message
- = XNEWVEC (const char, strlen (format)
+ parser->type_definition_forbidden_message = tmp
+ = XNEWVEC (char, strlen (format)
+ strlen (IDENTIFIER_POINTER (ridpointers[keyword]))
+ 1 /* `\0' */);
- sprintf ((char *) parser->type_definition_forbidden_message,
- format, IDENTIFIER_POINTER (ridpointers[keyword]));
+ sprintf (tmp, format, IDENTIFIER_POINTER (ridpointers[keyword]));
/* The restrictions on constant-expressions do not apply inside
sizeof expressions. */
@@ -17204,7 +17204,7 @@ cp_parser_sizeof_operand (cp_parser* parser, enum rid keyword)
--skip_evaluation;
/* Free the message we created. */
- free ((char *) parser->type_definition_forbidden_message);
+ free (tmp);
/* And restore the old one. */
parser->type_definition_forbidden_message = saved_message;
parser->integral_constant_expression_p