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()
127 if (__builtin_expect (s == buffer->rlimit, false)) in _cpp_clean_line()
135 if (s == buffer->rlimit) in _cpp_clean_line()
151 add_line_note (buffer, p - 1, p != d ? ' ' : '\\'); in _cpp_clean_line()
153 buffer->next_line = p - 1; in _cpp_clean_line()
164 add_line_note (buffer, s, s[2]); in _cpp_clean_line()
186 if (c == '\r' && s != buffer->rlimit && s[1] == '\n') in _cpp_clean_line()
188 if (s == buffer->rlimit) in _cpp_clean_line()
193 while (p != buffer->next_line && is_nvspace (p[-1])) in _cpp_clean_line()
195 if (p == buffer->next_line || p[-1] != '\\') in _cpp_clean_line()
198 add_line_note (buffer, p - 1, p != d ? ' ': '\\'); in _cpp_clean_line()
200 buffer->next_line = p - 1; in _cpp_clean_line()
205 add_line_note (buffer, d, s[2]); in _cpp_clean_line()
222 if (*s == '\r' && s != buffer->rlimit && s[1] == '\n') in _cpp_clean_line()
229 add_line_note (buffer, d + 1, '\n'); in _cpp_clean_line()
230 buffer->next_line = s + 1; in _cpp_clean_line()
266 cpp_buffer *buffer = pfile->buffer; in _cpp_process_line_notes() local
270 _cpp_line_note *note = &buffer->notes[buffer->cur_note]; in _cpp_process_line_notes()
273 if (note->pos > buffer->cur) in _cpp_process_line_notes()
276 buffer->cur_note++; in _cpp_process_line_notes()
277 col = CPP_BUF_COLUMN (buffer, note->pos + 1); in _cpp_process_line_notes()
285 if (buffer->next_line > buffer->rlimit) in _cpp_process_line_notes()
290 buffer->next_line = buffer->rlimit; in _cpp_process_line_notes()
293 buffer->line_base = note->pos; in _cpp_process_line_notes()
328 cpp_buffer *buffer = pfile->buffer; in _cpp_skip_block_comment() local
329 const uchar *cur = buffer->cur; in _cpp_skip_block_comment()
353 buffer->cur = cur; in _cpp_skip_block_comment()
355 pfile->line_table->highest_line, CPP_BUF_COL (buffer), in _cpp_skip_block_comment()
362 buffer->cur = cur - 1; in _cpp_skip_block_comment()
364 if (buffer->next_line >= buffer->rlimit) in _cpp_skip_block_comment()
368 cols = buffer->next_line - buffer->line_base; in _cpp_skip_block_comment()
371 cur = buffer->cur; in _cpp_skip_block_comment()
375 buffer->cur = cur; in _cpp_skip_block_comment()
386 cpp_buffer *buffer = pfile->buffer; in skip_line_comment() local
389 while (*buffer->cur != '\n') in skip_line_comment()
390 buffer->cur++; in skip_line_comment()
400 cpp_buffer *buffer = pfile->buffer; in skip_whitespace() local
413 CPP_BUF_COL (buffer), in skip_whitespace()
417 c = *buffer->cur++; in skip_whitespace()
425 buffer->cur--; in skip_whitespace()
473 cpp_buffer *buffer = pfile->buffer; in forms_identifier_p() local
475 if (*buffer->cur == '$') in forms_identifier_p()
480 buffer->cur++; in forms_identifier_p()
492 && *buffer->cur == '\\' in forms_identifier_p()
493 && (buffer->cur[1] == 'u' || buffer->cur[1] == 'U')) in forms_identifier_p()
495 buffer->cur += 2; in forms_identifier_p()
496 if (_cpp_valid_ucn (pfile, &buffer->cur, buffer->rlimit, 1 + !first, in forms_identifier_p()
499 buffer->cur -= 2; in forms_identifier_p()
515 cur = pfile->buffer->cur; in lex_identifier()
522 pfile->buffer->cur = cur; in lex_identifier()
527 while (ISIDNUM (*pfile->buffer->cur)) in lex_identifier()
529 pfile->buffer->cur++; in lex_identifier()
534 pfile->buffer->cur - base); in lex_identifier()
575 base = pfile->buffer->cur - 1; in lex_number()
578 cur = pfile->buffer->cur; in lex_number()
587 pfile->buffer->cur = cur; in lex_number()
670 pfile->buffer->cur = cur; in lex_string()
679 unsigned char *buffer; in save_comment() local
682 len = pfile->buffer->cur - from + 1; /* + 1 for the initial '/'. */ in save_comment()
686 if (is_vspace (pfile->buffer->cur[-1])) in save_comment()
697 buffer = _cpp_unaligned_alloc (pfile, clen); in save_comment()
701 token->val.str.text = buffer; in save_comment()
703 buffer[0] = '/'; in save_comment()
704 memcpy (buffer + 1, from, len - 1); in save_comment()
709 buffer[1] = '*'; in save_comment()
710 buffer[clen - 2] = '*'; in save_comment()
711 buffer[clen - 1] = '/'; in save_comment()
840 cpp_buffer *buffer = pfile->buffer; in _cpp_get_fresh_line() local
842 if (!buffer->need_line) in _cpp_get_fresh_line()
845 if (buffer->next_line < buffer->rlimit) in _cpp_get_fresh_line()
856 if (buffer->buf != buffer->rlimit in _cpp_get_fresh_line()
857 && buffer->next_line > buffer->rlimit in _cpp_get_fresh_line()
858 && !buffer->from_stage3) in _cpp_get_fresh_line()
861 buffer->next_line = buffer->rlimit; in _cpp_get_fresh_line()
866 CPP_BUF_COLUMN (buffer, buffer->cur), in _cpp_get_fresh_line()
872 return_at_eof = buffer->return_at_eof; in _cpp_get_fresh_line()
874 if (pfile->buffer == NULL || return_at_eof) in _cpp_get_fresh_line()
883 if (*buffer->cur == CHAR) \
884 buffer->cur++, result->type = THEN_TYPE; \
903 cpp_buffer *buffer; in _cpp_lex_direct() local
909 buffer = pfile->buffer; in _cpp_lex_direct()
910 if (buffer->need_line) in _cpp_lex_direct()
941 buffer = pfile->buffer; in _cpp_lex_direct()
946 if (buffer->cur >= buffer->notes[buffer->cur_note].pos in _cpp_lex_direct()
952 c = *buffer->cur++; in _cpp_lex_direct()
955 CPP_BUF_COLUMN (buffer, buffer->cur)); in _cpp_lex_direct()
965 if (buffer->cur < buffer->rlimit) in _cpp_lex_direct()
967 buffer->need_line = true; in _cpp_lex_direct()
982 if (*buffer->cur == '\'' || *buffer->cur == '"') in _cpp_lex_direct()
984 lex_string (pfile, result, buffer->cur - 1); in _cpp_lex_direct()
1003 result->val.node = lex_identifier (pfile, buffer->cur - 1, false, in _cpp_lex_direct()
1018 lex_string (pfile, result, buffer->cur - 1); in _cpp_lex_direct()
1023 comment_start = buffer->cur; in _cpp_lex_direct()
1024 c = *buffer->cur; in _cpp_lex_direct()
1037 && ! buffer->warned_cplusplus_comments) in _cpp_lex_direct()
1043 buffer->warned_cplusplus_comments = 1; in _cpp_lex_direct()
1051 buffer->cur++; in _cpp_lex_direct()
1074 lex_string (pfile, result, buffer->cur - 1); in _cpp_lex_direct()
1079 if (*buffer->cur == '=') in _cpp_lex_direct()
1080 buffer->cur++, result->type = CPP_LESS_EQ; in _cpp_lex_direct()
1081 else if (*buffer->cur == '<') in _cpp_lex_direct()
1083 buffer->cur++; in _cpp_lex_direct()
1088 if (*buffer->cur == ':') in _cpp_lex_direct()
1090 buffer->cur++; in _cpp_lex_direct()
1094 else if (*buffer->cur == '%') in _cpp_lex_direct()
1096 buffer->cur++; in _cpp_lex_direct()
1105 if (*buffer->cur == '=') in _cpp_lex_direct()
1106 buffer->cur++, result->type = CPP_GREATER_EQ; in _cpp_lex_direct()
1107 else if (*buffer->cur == '>') in _cpp_lex_direct()
1109 buffer->cur++; in _cpp_lex_direct()
1116 if (*buffer->cur == '=') in _cpp_lex_direct()
1117 buffer->cur++, result->type = CPP_MOD_EQ; in _cpp_lex_direct()
1120 if (*buffer->cur == ':') in _cpp_lex_direct()
1122 buffer->cur++; in _cpp_lex_direct()
1125 if (*buffer->cur == '%' && buffer->cur[1] == ':') in _cpp_lex_direct()
1126 buffer->cur += 2, result->type = CPP_PASTE; in _cpp_lex_direct()
1128 else if (*buffer->cur == '>') in _cpp_lex_direct()
1130 buffer->cur++; in _cpp_lex_direct()
1139 if (ISDIGIT (*buffer->cur)) in _cpp_lex_direct()
1146 else if (*buffer->cur == '.' && buffer->cur[1] == '.') in _cpp_lex_direct()
1147 buffer->cur += 2, result->type = CPP_ELLIPSIS; in _cpp_lex_direct()
1148 else if (*buffer->cur == '*' && CPP_OPTION (pfile, cplusplus)) in _cpp_lex_direct()
1149 buffer->cur++, result->type = CPP_DOT_STAR; in _cpp_lex_direct()
1154 if (*buffer->cur == '+') in _cpp_lex_direct()
1155 buffer->cur++, result->type = CPP_PLUS_PLUS; in _cpp_lex_direct()
1156 else if (*buffer->cur == '=') in _cpp_lex_direct()
1157 buffer->cur++, result->type = CPP_PLUS_EQ; in _cpp_lex_direct()
1162 if (*buffer->cur == '>') in _cpp_lex_direct()
1164 buffer->cur++; in _cpp_lex_direct()
1166 if (*buffer->cur == '*' && CPP_OPTION (pfile, cplusplus)) in _cpp_lex_direct()
1167 buffer->cur++, result->type = CPP_DEREF_STAR; in _cpp_lex_direct()
1169 else if (*buffer->cur == '-') in _cpp_lex_direct()
1170 buffer->cur++, result->type = CPP_MINUS_MINUS; in _cpp_lex_direct()
1171 else if (*buffer->cur == '=') in _cpp_lex_direct()
1172 buffer->cur++, result->type = CPP_MINUS_EQ; in _cpp_lex_direct()
1177 if (*buffer->cur == '&') in _cpp_lex_direct()
1178 buffer->cur++, result->type = CPP_AND_AND; in _cpp_lex_direct()
1179 else if (*buffer->cur == '=') in _cpp_lex_direct()
1180 buffer->cur++, result->type = CPP_AND_EQ; in _cpp_lex_direct()
1185 if (*buffer->cur == '|') in _cpp_lex_direct()
1186 buffer->cur++, result->type = CPP_OR_OR; in _cpp_lex_direct()
1187 else if (*buffer->cur == '=') in _cpp_lex_direct()
1188 buffer->cur++, result->type = CPP_OR_EQ; in _cpp_lex_direct()
1193 if (*buffer->cur == ':' && CPP_OPTION (pfile, cplusplus)) in _cpp_lex_direct()
1194 buffer->cur++, result->type = CPP_SCOPE; in _cpp_lex_direct()
1195 else if (*buffer->cur == '>' && CPP_OPTION (pfile, digraphs)) in _cpp_lex_direct()
1197 buffer->cur++; in _cpp_lex_direct()
1226 const uchar *base = --buffer->cur; in _cpp_lex_direct()
1236 buffer->cur++; in _cpp_lex_direct()
1240 create_literal (pfile, result, buffer->cur - 1, 1, CPP_OTHER); in _cpp_lex_direct()
1269 utf8_to_ucn (unsigned char *buffer, const unsigned char *name) in utf8_to_ucn() argument
1291 *buffer++ = '\\'; in utf8_to_ucn()
1292 *buffer++ = 'U'; in utf8_to_ucn()
1294 *buffer++ = "0123456789abcdef"[(utf32 >> (4 * j)) & 0xF]; in utf8_to_ucn()
1307 unsigned char *buffer, bool forstring) in cpp_spell_token() argument
1325 *buffer++ = c; in cpp_spell_token()
1333 memcpy (buffer, NODE_NAME (token->val.node), in cpp_spell_token()
1335 buffer += NODE_LEN (token->val.node); in cpp_spell_token()
1345 i += utf8_to_ucn (buffer, name + i) - 1; in cpp_spell_token()
1346 buffer += 10; in cpp_spell_token()
1349 *buffer++ = NODE_NAME (token->val.node)[i]; in cpp_spell_token()
1354 memcpy (buffer, token->val.str.text, token->val.str.len); in cpp_spell_token()
1355 buffer += token->val.str.len; in cpp_spell_token()
1364 return buffer; in cpp_spell_token()
1426 unsigned char buffer[10]; in cpp_output_token() local
1427 i += utf8_to_ucn (buffer, name + i) - 1; in cpp_output_token()
1428 fwrite (buffer, 1, 10, fp); in cpp_output_token()