cpplex.c (cpp_token_len): Tighten up.
* cpplex.c (cpp_token_len): Tighten up. (cpp_token_as_text): Need extra byte now. * cpplib.c (glue_header_name): Need extra 2 bytes. * cppmacro.c (cpp_macro_definition): Need extra byte. From-SVN: r66049
This commit is contained in:
parent
b746b8cb0a
commit
59325650b1
4 changed files with 16 additions and 9 deletions
|
@ -1,3 +1,10 @@
|
|||
2003-04-24 Neil Booth <neil@daikokuya.co.uk>
|
||||
|
||||
* cpplex.c (cpp_token_len): Tighten up.
|
||||
(cpp_token_as_text): Need extra byte now.
|
||||
* cpplib.c (glue_header_name): Need extra 2 bytes.
|
||||
* cppmacro.c (cpp_macro_definition): Need extra byte.
|
||||
|
||||
2003-04-24 Alexander Kabaev <kan@FreeBSD.ORG>
|
||||
|
||||
* config/sparc/sparc.md (umulsidi3, mulsidi3): Avoid using
|
||||
|
|
14
gcc/cpplex.c
14
gcc/cpplex.c
|
@ -1094,8 +1094,8 @@ _cpp_lex_direct (pfile)
|
|||
return result;
|
||||
}
|
||||
|
||||
/* An upper bound on the number of bytes needed to spell TOKEN,
|
||||
including preceding whitespace. */
|
||||
/* An upper bound on the number of bytes needed to spell TOKEN.
|
||||
Does not include preceding whitespace. */
|
||||
unsigned int
|
||||
cpp_token_len (token)
|
||||
const cpp_token *token;
|
||||
|
@ -1104,12 +1104,12 @@ cpp_token_len (token)
|
|||
|
||||
switch (TOKEN_SPELL (token))
|
||||
{
|
||||
default: len = 0; break;
|
||||
default: len = 4; break;
|
||||
case SPELL_LITERAL: len = token->val.str.len; break;
|
||||
case SPELL_IDENT: len = NODE_LEN (token->val.node); break;
|
||||
}
|
||||
/* 1 for whitespace, 4 for comment delimiters. */
|
||||
return len + 5;
|
||||
|
||||
return len;
|
||||
}
|
||||
|
||||
/* Write the spelling of a token TOKEN to BUFFER. The buffer must
|
||||
|
@ -1167,8 +1167,8 @@ unsigned char *
|
|||
cpp_token_as_text (pfile, token)
|
||||
cpp_reader *pfile;
|
||||
const cpp_token *token;
|
||||
{
|
||||
unsigned int len = cpp_token_len (token);
|
||||
{
|
||||
unsigned int len = cpp_token_len (token) + 1;
|
||||
unsigned char *start = _cpp_unaligned_alloc (pfile, len), *end;
|
||||
|
||||
end = cpp_spell_token (pfile, token, start);
|
||||
|
|
|
@ -594,7 +594,7 @@ glue_header_name (pfile)
|
|||
break;
|
||||
}
|
||||
|
||||
len = cpp_token_len (token);
|
||||
len = cpp_token_len (token) + 2; /* Leading space, terminating \0. */
|
||||
if (total_len + len > capacity)
|
||||
{
|
||||
capacity = (capacity + len) * 2;
|
||||
|
|
|
@ -1715,7 +1715,7 @@ cpp_macro_definition (pfile, node)
|
|||
if (token->type == CPP_MACRO_ARG)
|
||||
len += NODE_LEN (macro->params[token->val.arg_no - 1]);
|
||||
else
|
||||
len += cpp_token_len (token); /* Includes room for ' '. */
|
||||
len += cpp_token_len (token) + 1; /* Includes room for ' '. */
|
||||
if (token->flags & STRINGIFY_ARG)
|
||||
len++; /* "#" */
|
||||
if (token->flags & PASTE_LEFT)
|
||||
|
|
Loading…
Add table
Reference in a new issue