Lines Matching refs:buffer

83 add_line_note (cpp_buffer *buffer, const uchar *pos, unsigned int type)  in add_line_note()  argument
85 if (buffer->notes_used == buffer->notes_cap) in add_line_note()
87 buffer->notes_cap = buffer->notes_cap * 2 + 200; in add_line_note()
88 buffer->notes = XRESIZEVEC (_cpp_line_note, buffer->notes, in add_line_note()
89 buffer->notes_cap); in add_line_note()
92 buffer->notes[buffer->notes_used].pos = pos; in add_line_note()
93 buffer->notes[buffer->notes_used].type = type; in add_line_note()
94 buffer->notes_used++; in add_line_note()
102 cpp_buffer *buffer; in _cpp_clean_line() local
106 buffer = pfile->buffer; in _cpp_clean_line()
107 buffer->cur_note = buffer->notes_used = 0; in _cpp_clean_line()
108 buffer->cur = buffer->line_base = buffer->next_line; in _cpp_clean_line()
109 buffer->need_line = false; in _cpp_clean_line()
110 s = buffer->next_line - 1; in _cpp_clean_line()
112 if (!buffer->from_stage3) in _cpp_clean_line()
124 if (s == buffer->rlimit) in _cpp_clean_line()
131 if (s == buffer->rlimit) in _cpp_clean_line()
136 while (p != buffer->next_line && is_nvspace (p[-1])) in _cpp_clean_line()
138 if (p == buffer->next_line || p[-1] != '\\') in _cpp_clean_line()
143 add_line_note (buffer, p - 1, p != d ? ' ' : '\\'); in _cpp_clean_line()
145 buffer->next_line = p - 1; in _cpp_clean_line()
152 add_line_note (buffer, s, s[2]); in _cpp_clean_line()
174 if (c == '\r' && s != buffer->rlimit && s[1] == '\n') in _cpp_clean_line()
176 if (s == buffer->rlimit) in _cpp_clean_line()
181 while (p != buffer->next_line && is_nvspace (p[-1])) in _cpp_clean_line()
183 if (p == buffer->next_line || p[-1] != '\\') in _cpp_clean_line()
186 add_line_note (buffer, p - 1, p != d ? ' ': '\\'); in _cpp_clean_line()
188 buffer->next_line = p - 1; in _cpp_clean_line()
193 add_line_note (buffer, d, s[2]); in _cpp_clean_line()
210 if (*s == '\r' && s != buffer->rlimit && s[1] == '\n') in _cpp_clean_line()
217 add_line_note (buffer, d + 1, '\n'); in _cpp_clean_line()
218 buffer->next_line = s + 1; in _cpp_clean_line()
254 cpp_buffer *buffer = pfile->buffer; in _cpp_process_line_notes() local
258 _cpp_line_note *note = &buffer->notes[buffer->cur_note]; in _cpp_process_line_notes()
261 if (note->pos > buffer->cur) in _cpp_process_line_notes()
264 buffer->cur_note++; in _cpp_process_line_notes()
265 col = CPP_BUF_COLUMN (buffer, note->pos + 1); in _cpp_process_line_notes()
273 if (buffer->next_line > buffer->rlimit) in _cpp_process_line_notes()
278 buffer->next_line = buffer->rlimit; in _cpp_process_line_notes()
281 buffer->line_base = note->pos; in _cpp_process_line_notes()
316 cpp_buffer *buffer = pfile->buffer; in _cpp_skip_block_comment() local
317 const uchar *cur = buffer->cur; in _cpp_skip_block_comment()
341 buffer->cur = cur; in _cpp_skip_block_comment()
343 pfile->line_table->highest_line, CPP_BUF_COL (buffer), in _cpp_skip_block_comment()
350 buffer->cur = cur - 1; in _cpp_skip_block_comment()
352 if (buffer->next_line >= buffer->rlimit) in _cpp_skip_block_comment()
356 cols = buffer->next_line - buffer->line_base; in _cpp_skip_block_comment()
359 cur = buffer->cur; in _cpp_skip_block_comment()
363 buffer->cur = cur; in _cpp_skip_block_comment()
374 cpp_buffer *buffer = pfile->buffer; in skip_line_comment() local
377 while (*buffer->cur != '\n') in skip_line_comment()
378 buffer->cur++; in skip_line_comment()
388 cpp_buffer *buffer = pfile->buffer; in skip_whitespace() local
401 CPP_BUF_COL (buffer), in skip_whitespace()
405 c = *buffer->cur++; in skip_whitespace()
413 buffer->cur--; in skip_whitespace()
461 cpp_buffer *buffer = pfile->buffer; in forms_identifier_p() local
463 if (*buffer->cur == '$') in forms_identifier_p()
468 buffer->cur++; in forms_identifier_p()
480 && *buffer->cur == '\\' in forms_identifier_p()
481 && (buffer->cur[1] == 'u' || buffer->cur[1] == 'U')) in forms_identifier_p()
483 buffer->cur += 2; in forms_identifier_p()
484 if (_cpp_valid_ucn (pfile, &buffer->cur, buffer->rlimit, 1 + !first, in forms_identifier_p()
487 buffer->cur -= 2; in forms_identifier_p()
503 cur = pfile->buffer->cur; in lex_identifier()
510 pfile->buffer->cur = cur; in lex_identifier()
515 while (ISIDNUM (*pfile->buffer->cur)) in lex_identifier()
517 pfile->buffer->cur++; in lex_identifier()
522 pfile->buffer->cur - base); in lex_identifier()
563 base = pfile->buffer->cur - 1; in lex_number()
566 cur = pfile->buffer->cur; in lex_number()
575 pfile->buffer->cur = cur; in lex_number()
653 pfile->buffer->cur = cur; in lex_string()
662 unsigned char *buffer; in save_comment() local
665 len = pfile->buffer->cur - from + 1; /* + 1 for the initial '/'. */ in save_comment()
669 if (is_vspace (pfile->buffer->cur[-1])) in save_comment()
680 buffer = _cpp_unaligned_alloc (pfile, clen); in save_comment()
684 token->val.str.text = buffer; in save_comment()
686 buffer[0] = '/'; in save_comment()
687 memcpy (buffer + 1, from, len - 1); in save_comment()
692 buffer[1] = '*'; in save_comment()
693 buffer[clen - 2] = '*'; in save_comment()
694 buffer[clen - 1] = '/'; in save_comment()
818 cpp_buffer *buffer = pfile->buffer; in _cpp_get_fresh_line() local
820 if (!buffer->need_line) in _cpp_get_fresh_line()
823 if (buffer->next_line < buffer->rlimit) in _cpp_get_fresh_line()
834 if (buffer->buf != buffer->rlimit in _cpp_get_fresh_line()
835 && buffer->next_line > buffer->rlimit in _cpp_get_fresh_line()
836 && !buffer->from_stage3) in _cpp_get_fresh_line()
839 buffer->next_line = buffer->rlimit; in _cpp_get_fresh_line()
842 return_at_eof = buffer->return_at_eof; in _cpp_get_fresh_line()
844 if (pfile->buffer == NULL || return_at_eof) in _cpp_get_fresh_line()
853 if (*buffer->cur == CHAR) \
854 buffer->cur++, result->type = THEN_TYPE; \
873 cpp_buffer *buffer; in _cpp_lex_direct() local
879 buffer = pfile->buffer; in _cpp_lex_direct()
880 if (buffer->need_line) in _cpp_lex_direct()
911 buffer = pfile->buffer; in _cpp_lex_direct()
916 if (buffer->cur >= buffer->notes[buffer->cur_note].pos in _cpp_lex_direct()
922 c = *buffer->cur++; in _cpp_lex_direct()
925 CPP_BUF_COLUMN (buffer, buffer->cur)); in _cpp_lex_direct()
935 if (buffer->cur < buffer->rlimit) in _cpp_lex_direct()
937 buffer->need_line = true; in _cpp_lex_direct()
952 if (*buffer->cur == '\'' || *buffer->cur == '"') in _cpp_lex_direct()
954 lex_string (pfile, result, buffer->cur - 1); in _cpp_lex_direct()
973 result->val.node = lex_identifier (pfile, buffer->cur - 1, false, in _cpp_lex_direct()
988 lex_string (pfile, result, buffer->cur - 1); in _cpp_lex_direct()
993 comment_start = buffer->cur; in _cpp_lex_direct()
994 c = *buffer->cur; in _cpp_lex_direct()
1007 && ! buffer->warned_cplusplus_comments) in _cpp_lex_direct()
1013 buffer->warned_cplusplus_comments = 1; in _cpp_lex_direct()
1021 buffer->cur++; in _cpp_lex_direct()
1044 lex_string (pfile, result, buffer->cur - 1); in _cpp_lex_direct()
1049 if (*buffer->cur == '=') in _cpp_lex_direct()
1050 buffer->cur++, result->type = CPP_LESS_EQ; in _cpp_lex_direct()
1051 else if (*buffer->cur == '<') in _cpp_lex_direct()
1053 buffer->cur++; in _cpp_lex_direct()
1058 if (*buffer->cur == ':') in _cpp_lex_direct()
1060 buffer->cur++; in _cpp_lex_direct()
1064 else if (*buffer->cur == '%') in _cpp_lex_direct()
1066 buffer->cur++; in _cpp_lex_direct()
1075 if (*buffer->cur == '=') in _cpp_lex_direct()
1076 buffer->cur++, result->type = CPP_GREATER_EQ; in _cpp_lex_direct()
1077 else if (*buffer->cur == '>') in _cpp_lex_direct()
1079 buffer->cur++; in _cpp_lex_direct()
1086 if (*buffer->cur == '=') in _cpp_lex_direct()
1087 buffer->cur++, result->type = CPP_MOD_EQ; in _cpp_lex_direct()
1090 if (*buffer->cur == ':') in _cpp_lex_direct()
1092 buffer->cur++; in _cpp_lex_direct()
1095 if (*buffer->cur == '%' && buffer->cur[1] == ':') in _cpp_lex_direct()
1096 buffer->cur += 2, result->type = CPP_PASTE; in _cpp_lex_direct()
1098 else if (*buffer->cur == '>') in _cpp_lex_direct()
1100 buffer->cur++; in _cpp_lex_direct()
1109 if (ISDIGIT (*buffer->cur)) in _cpp_lex_direct()
1116 else if (*buffer->cur == '.' && buffer->cur[1] == '.') in _cpp_lex_direct()
1117 buffer->cur += 2, result->type = CPP_ELLIPSIS; in _cpp_lex_direct()
1118 else if (*buffer->cur == '*' && CPP_OPTION (pfile, cplusplus)) in _cpp_lex_direct()
1119 buffer->cur++, result->type = CPP_DOT_STAR; in _cpp_lex_direct()
1124 if (*buffer->cur == '+') in _cpp_lex_direct()
1125 buffer->cur++, result->type = CPP_PLUS_PLUS; in _cpp_lex_direct()
1126 else if (*buffer->cur == '=') in _cpp_lex_direct()
1127 buffer->cur++, result->type = CPP_PLUS_EQ; in _cpp_lex_direct()
1132 if (*buffer->cur == '>') in _cpp_lex_direct()
1134 buffer->cur++; in _cpp_lex_direct()
1136 if (*buffer->cur == '*' && CPP_OPTION (pfile, cplusplus)) in _cpp_lex_direct()
1137 buffer->cur++, result->type = CPP_DEREF_STAR; in _cpp_lex_direct()
1139 else if (*buffer->cur == '-') in _cpp_lex_direct()
1140 buffer->cur++, result->type = CPP_MINUS_MINUS; in _cpp_lex_direct()
1141 else if (*buffer->cur == '=') in _cpp_lex_direct()
1142 buffer->cur++, result->type = CPP_MINUS_EQ; in _cpp_lex_direct()
1147 if (*buffer->cur == '&') in _cpp_lex_direct()
1148 buffer->cur++, result->type = CPP_AND_AND; in _cpp_lex_direct()
1149 else if (*buffer->cur == '=') in _cpp_lex_direct()
1150 buffer->cur++, result->type = CPP_AND_EQ; in _cpp_lex_direct()
1155 if (*buffer->cur == '|') in _cpp_lex_direct()
1156 buffer->cur++, result->type = CPP_OR_OR; in _cpp_lex_direct()
1157 else if (*buffer->cur == '=') in _cpp_lex_direct()
1158 buffer->cur++, result->type = CPP_OR_EQ; in _cpp_lex_direct()
1163 if (*buffer->cur == ':' && CPP_OPTION (pfile, cplusplus)) in _cpp_lex_direct()
1164 buffer->cur++, result->type = CPP_SCOPE; in _cpp_lex_direct()
1165 else if (*buffer->cur == '>' && CPP_OPTION (pfile, digraphs)) in _cpp_lex_direct()
1167 buffer->cur++; in _cpp_lex_direct()
1196 const uchar *base = --buffer->cur; in _cpp_lex_direct()
1206 buffer->cur++; in _cpp_lex_direct()
1210 create_literal (pfile, result, buffer->cur - 1, 1, CPP_OTHER); in _cpp_lex_direct()
1239 utf8_to_ucn (unsigned char *buffer, const unsigned char *name) in utf8_to_ucn() argument
1261 *buffer++ = '\\'; in utf8_to_ucn()
1262 *buffer++ = 'U'; in utf8_to_ucn()
1264 *buffer++ = "0123456789abcdef"[(utf32 >> (4 * j)) & 0xF]; in utf8_to_ucn()
1277 unsigned char *buffer, bool forstring) in cpp_spell_token() argument
1295 *buffer++ = c; in cpp_spell_token()
1303 memcpy (buffer, NODE_NAME (token->val.node), in cpp_spell_token()
1305 buffer += NODE_LEN (token->val.node); in cpp_spell_token()
1315 i += utf8_to_ucn (buffer, name + i) - 1; in cpp_spell_token()
1316 buffer += 10; in cpp_spell_token()
1319 *buffer++ = NODE_NAME (token->val.node)[i]; in cpp_spell_token()
1324 memcpy (buffer, token->val.str.text, token->val.str.len); in cpp_spell_token()
1325 buffer += token->val.str.len; in cpp_spell_token()
1334 return buffer; in cpp_spell_token()
1396 unsigned char buffer[10]; in cpp_output_token() local
1397 i += utf8_to_ucn (buffer, name + i) - 1; in cpp_output_token()
1398 fwrite (buffer, 1, 10, fp); in cpp_output_token()