Lines Matching refs:buffer

85 add_line_note (cpp_buffer *buffer, const uchar *pos, unsigned int type)  in add_line_note()  argument
87 if (buffer->notes_used == buffer->notes_cap) in add_line_note()
89 buffer->notes_cap = buffer->notes_cap * 2 + 200; in add_line_note()
90 buffer->notes = XRESIZEVEC (_cpp_line_note, buffer->notes, in add_line_note()
91 buffer->notes_cap); in add_line_note()
94 buffer->notes[buffer->notes_used].pos = pos; in add_line_note()
95 buffer->notes[buffer->notes_used].type = type; in add_line_note()
96 buffer->notes_used++; in add_line_note()
657 cpp_buffer *buffer; in _cpp_clean_line() local
661 buffer = pfile->buffer; in _cpp_clean_line()
662 buffer->cur_note = buffer->notes_used = 0; in _cpp_clean_line()
663 buffer->cur = buffer->line_base = buffer->next_line; in _cpp_clean_line()
664 buffer->need_line = false; in _cpp_clean_line()
665 s = buffer->next_line; in _cpp_clean_line()
667 if (!buffer->from_stage3) in _cpp_clean_line()
677 s = search_line_fast (s, buffer->rlimit); in _cpp_clean_line()
692 add_line_note (buffer, s, s[2]); in _cpp_clean_line()
714 if (__builtin_expect (s == buffer->rlimit, false)) in _cpp_clean_line()
721 if (s == buffer->rlimit) in _cpp_clean_line()
737 add_line_note (buffer, p - 1, p != d ? ' ' : '\\'); in _cpp_clean_line()
739 buffer->next_line = p - 1; in _cpp_clean_line()
750 if (c == '\r' && s != buffer->rlimit && s[1] == '\n') in _cpp_clean_line()
752 if (s == buffer->rlimit) in _cpp_clean_line()
757 while (p != buffer->next_line && is_nvspace (p[-1])) in _cpp_clean_line()
759 if (p == buffer->next_line || p[-1] != '\\') in _cpp_clean_line()
762 add_line_note (buffer, p - 1, p != d ? ' ': '\\'); in _cpp_clean_line()
764 buffer->next_line = p - 1; in _cpp_clean_line()
769 add_line_note (buffer, d, s[2]); in _cpp_clean_line()
785 if (*s == '\r' && s != buffer->rlimit && s[1] == '\n') in _cpp_clean_line()
792 add_line_note (buffer, d + 1, '\n'); in _cpp_clean_line()
793 buffer->next_line = s + 1; in _cpp_clean_line()
829 cpp_buffer *buffer = pfile->buffer; in _cpp_process_line_notes() local
833 _cpp_line_note *note = &buffer->notes[buffer->cur_note]; in _cpp_process_line_notes()
836 if (note->pos > buffer->cur) in _cpp_process_line_notes()
839 buffer->cur_note++; in _cpp_process_line_notes()
840 col = CPP_BUF_COLUMN (buffer, note->pos + 1); in _cpp_process_line_notes()
848 if (buffer->next_line > buffer->rlimit) in _cpp_process_line_notes()
853 buffer->next_line = buffer->rlimit; in _cpp_process_line_notes()
856 buffer->line_base = note->pos; in _cpp_process_line_notes()
895 cpp_buffer *buffer = pfile->buffer; in _cpp_skip_block_comment() local
896 const uchar *cur = buffer->cur; in _cpp_skip_block_comment()
920 buffer->cur = cur; in _cpp_skip_block_comment()
923 CPP_BUF_COL (buffer), in _cpp_skip_block_comment()
930 buffer->cur = cur - 1; in _cpp_skip_block_comment()
932 if (buffer->next_line >= buffer->rlimit) in _cpp_skip_block_comment()
936 cols = buffer->next_line - buffer->line_base; in _cpp_skip_block_comment()
939 cur = buffer->cur; in _cpp_skip_block_comment()
943 buffer->cur = cur; in _cpp_skip_block_comment()
954 cpp_buffer *buffer = pfile->buffer; in skip_line_comment() local
957 while (*buffer->cur != '\n') in skip_line_comment()
958 buffer->cur++; in skip_line_comment()
968 cpp_buffer *buffer = pfile->buffer; in skip_whitespace() local
981 CPP_BUF_COL (buffer), in skip_whitespace()
985 c = *buffer->cur++; in skip_whitespace()
993 buffer->cur--; in skip_whitespace()
1041 cpp_buffer *buffer = pfile->buffer; in forms_identifier_p() local
1043 if (*buffer->cur == '$') in forms_identifier_p()
1048 buffer->cur++; in forms_identifier_p()
1060 && *buffer->cur == '\\' in forms_identifier_p()
1061 && (buffer->cur[1] == 'u' || buffer->cur[1] == 'U')) in forms_identifier_p()
1063 buffer->cur += 2; in forms_identifier_p()
1064 if (_cpp_valid_ucn (pfile, &buffer->cur, buffer->rlimit, 1 + !first, in forms_identifier_p()
1067 buffer->cur -= 2; in forms_identifier_p()
1140 cur = pfile->buffer->cur; in lex_identifier()
1147 pfile->buffer->cur = cur; in lex_identifier()
1152 while (ISIDNUM (*pfile->buffer->cur)) in lex_identifier()
1154 pfile->buffer->cur++; in lex_identifier()
1159 pfile->buffer->cur - base); in lex_identifier()
1206 base = pfile->buffer->cur - 1; in lex_number()
1209 cur = pfile->buffer->cur; in lex_number()
1218 pfile->buffer->cur = cur; in lex_number()
1289 _cpp_line_note *note = &pfile->buffer->notes[pfile->buffer->cur_note]; in lex_raw_string()
1330 int col = CPP_BUF_COLUMN (pfile->buffer, raw_prefix + raw_prefix_len) in lex_raw_string()
1339 pfile->buffer->cur = raw_prefix - 1; in lex_raw_string()
1466 if (pfile->buffer->cur < pfile->buffer->rlimit) in lex_raw_string()
1468 pfile->buffer->need_line = true; in lex_raw_string()
1470 pfile->buffer->cur = cur-1; in lex_raw_string()
1486 cur = base = pfile->buffer->cur; in lex_raw_string()
1487 note = &pfile->buffer->notes[pfile->buffer->cur_note]; in lex_raw_string()
1504 pfile->buffer->cur = cur; in lex_raw_string()
1620 pfile->buffer->cur = cur; in lex_string()
1674 unsigned char *buffer; in save_comment() local
1677 len = pfile->buffer->cur - from + 1; /* + 1 for the initial '/'. */ in save_comment()
1681 if (is_vspace (pfile->buffer->cur[-1])) in save_comment()
1693 buffer = _cpp_unaligned_alloc (pfile, clen); in save_comment()
1697 token->val.str.text = buffer; in save_comment()
1699 buffer[0] = '/'; in save_comment()
1700 memcpy (buffer + 1, from, len - 1); in save_comment()
1705 buffer[1] = '*'; in save_comment()
1706 buffer[clen - 2] = '*'; in save_comment()
1707 buffer[clen - 1] = '/'; in save_comment()
1711 if (buffer[i] == '/' && (buffer[i - 1] == '*' || buffer[i + 1] == '*')) in save_comment()
1712 buffer[i] = '|'; in save_comment()
1931 cpp_buffer *buffer = pfile->buffer; in _cpp_get_fresh_line() local
1933 if (!buffer->need_line) in _cpp_get_fresh_line()
1936 if (buffer->next_line < buffer->rlimit) in _cpp_get_fresh_line()
1947 if (buffer->buf != buffer->rlimit in _cpp_get_fresh_line()
1948 && buffer->next_line > buffer->rlimit in _cpp_get_fresh_line()
1949 && !buffer->from_stage3) in _cpp_get_fresh_line()
1952 buffer->next_line = buffer->rlimit; in _cpp_get_fresh_line()
1955 return_at_eof = buffer->return_at_eof; in _cpp_get_fresh_line()
1957 if (pfile->buffer == NULL || return_at_eof) in _cpp_get_fresh_line()
1966 if (*buffer->cur == CHAR) \
1967 buffer->cur++, result->type = THEN_TYPE; \
1986 cpp_buffer *buffer; in _cpp_lex_direct() local
1992 buffer = pfile->buffer; in _cpp_lex_direct()
1993 if (buffer->need_line) in _cpp_lex_direct()
2024 buffer = pfile->buffer; in _cpp_lex_direct()
2029 if (buffer->cur >= buffer->notes[buffer->cur_note].pos in _cpp_lex_direct()
2035 c = *buffer->cur++; in _cpp_lex_direct()
2041 CPP_BUF_COLUMN (buffer, buffer->cur)); in _cpp_lex_direct()
2051 if (buffer->cur < buffer->rlimit) in _cpp_lex_direct()
2053 buffer->need_line = true; in _cpp_lex_direct()
2075 if ((*buffer->cur == '\'' && c != 'R') in _cpp_lex_direct()
2076 || *buffer->cur == '"' in _cpp_lex_direct()
2077 || (*buffer->cur == 'R' in _cpp_lex_direct()
2079 && buffer->cur[1] == '"' in _cpp_lex_direct()
2081 || (*buffer->cur == '8' in _cpp_lex_direct()
2083 && (buffer->cur[1] == '"' in _cpp_lex_direct()
2084 || (buffer->cur[1] == 'R' && buffer->cur[2] == '"' in _cpp_lex_direct()
2087 lex_string (pfile, result, buffer->cur - 1); in _cpp_lex_direct()
2107 result->val.node.node = lex_identifier (pfile, buffer->cur - 1, false, in _cpp_lex_direct()
2122 lex_string (pfile, result, buffer->cur - 1); in _cpp_lex_direct()
2127 comment_start = buffer->cur; in _cpp_lex_direct()
2128 c = *buffer->cur; in _cpp_lex_direct()
2141 && ! buffer->warned_cplusplus_comments) in _cpp_lex_direct()
2147 buffer->warned_cplusplus_comments = 1; in _cpp_lex_direct()
2155 buffer->cur++; in _cpp_lex_direct()
2178 lex_string (pfile, result, buffer->cur - 1); in _cpp_lex_direct()
2184 if (*buffer->cur == '=') in _cpp_lex_direct()
2185 buffer->cur++, result->type = CPP_LESS_EQ; in _cpp_lex_direct()
2186 else if (*buffer->cur == '<') in _cpp_lex_direct()
2188 buffer->cur++; in _cpp_lex_direct()
2193 if (*buffer->cur == ':') in _cpp_lex_direct()
2195 buffer->cur++; in _cpp_lex_direct()
2199 else if (*buffer->cur == '%') in _cpp_lex_direct()
2201 buffer->cur++; in _cpp_lex_direct()
2210 if (*buffer->cur == '=') in _cpp_lex_direct()
2211 buffer->cur++, result->type = CPP_GREATER_EQ; in _cpp_lex_direct()
2212 else if (*buffer->cur == '>') in _cpp_lex_direct()
2214 buffer->cur++; in _cpp_lex_direct()
2221 if (*buffer->cur == '=') in _cpp_lex_direct()
2222 buffer->cur++, result->type = CPP_MOD_EQ; in _cpp_lex_direct()
2225 if (*buffer->cur == ':') in _cpp_lex_direct()
2227 buffer->cur++; in _cpp_lex_direct()
2230 if (*buffer->cur == '%' && buffer->cur[1] == ':') in _cpp_lex_direct()
2231 buffer->cur += 2, result->type = CPP_PASTE, result->val.token_no = 0; in _cpp_lex_direct()
2233 else if (*buffer->cur == '>') in _cpp_lex_direct()
2235 buffer->cur++; in _cpp_lex_direct()
2244 if (ISDIGIT (*buffer->cur)) in _cpp_lex_direct()
2251 else if (*buffer->cur == '.' && buffer->cur[1] == '.') in _cpp_lex_direct()
2252 buffer->cur += 2, result->type = CPP_ELLIPSIS; in _cpp_lex_direct()
2253 else if (*buffer->cur == '*' && CPP_OPTION (pfile, cplusplus)) in _cpp_lex_direct()
2254 buffer->cur++, result->type = CPP_DOT_STAR; in _cpp_lex_direct()
2259 if (*buffer->cur == '+') in _cpp_lex_direct()
2260 buffer->cur++, result->type = CPP_PLUS_PLUS; in _cpp_lex_direct()
2261 else if (*buffer->cur == '=') in _cpp_lex_direct()
2262 buffer->cur++, result->type = CPP_PLUS_EQ; in _cpp_lex_direct()
2267 if (*buffer->cur == '>') in _cpp_lex_direct()
2269 buffer->cur++; in _cpp_lex_direct()
2271 if (*buffer->cur == '*' && CPP_OPTION (pfile, cplusplus)) in _cpp_lex_direct()
2272 buffer->cur++, result->type = CPP_DEREF_STAR; in _cpp_lex_direct()
2274 else if (*buffer->cur == '-') in _cpp_lex_direct()
2275 buffer->cur++, result->type = CPP_MINUS_MINUS; in _cpp_lex_direct()
2276 else if (*buffer->cur == '=') in _cpp_lex_direct()
2277 buffer->cur++, result->type = CPP_MINUS_EQ; in _cpp_lex_direct()
2282 if (*buffer->cur == '&') in _cpp_lex_direct()
2283 buffer->cur++, result->type = CPP_AND_AND; in _cpp_lex_direct()
2284 else if (*buffer->cur == '=') in _cpp_lex_direct()
2285 buffer->cur++, result->type = CPP_AND_EQ; in _cpp_lex_direct()
2290 if (*buffer->cur == '|') in _cpp_lex_direct()
2291 buffer->cur++, result->type = CPP_OR_OR; in _cpp_lex_direct()
2292 else if (*buffer->cur == '=') in _cpp_lex_direct()
2293 buffer->cur++, result->type = CPP_OR_EQ; in _cpp_lex_direct()
2298 if (*buffer->cur == ':' && CPP_OPTION (pfile, cplusplus)) in _cpp_lex_direct()
2299 buffer->cur++, result->type = CPP_SCOPE; in _cpp_lex_direct()
2300 else if (*buffer->cur == '>' && CPP_OPTION (pfile, digraphs)) in _cpp_lex_direct()
2302 buffer->cur++; in _cpp_lex_direct()
2331 const uchar *base = --buffer->cur; in _cpp_lex_direct()
2341 buffer->cur++; in _cpp_lex_direct()
2345 create_literal (pfile, result, buffer->cur - 1, 1, CPP_OTHER); in _cpp_lex_direct()
2374 utf8_to_ucn (unsigned char *buffer, const unsigned char *name) in utf8_to_ucn() argument
2396 *buffer++ = '\\'; in utf8_to_ucn()
2397 *buffer++ = 'U'; in utf8_to_ucn()
2399 *buffer++ = "0123456789abcdef"[(utf32 >> (4 * j)) & 0xF]; in utf8_to_ucn()
2419 unsigned char *buffer, bool forstring) in cpp_spell_token() argument
2436 *buffer++ = c; in cpp_spell_token()
2444 memcpy (buffer, NODE_NAME (token->val.node.node), in cpp_spell_token()
2446 buffer += NODE_LEN (token->val.node.node); in cpp_spell_token()
2456 i += utf8_to_ucn (buffer, name + i) - 1; in cpp_spell_token()
2457 buffer += 10; in cpp_spell_token()
2460 *buffer++ = NODE_NAME (token->val.node.node)[i]; in cpp_spell_token()
2465 memcpy (buffer, token->val.str.text, token->val.str.len); in cpp_spell_token()
2466 buffer += token->val.str.len; in cpp_spell_token()
2475 return buffer; in cpp_spell_token()
2542 unsigned char buffer[10]; in cpp_output_token() local
2543 i += utf8_to_ucn (buffer, name + i) - 1; in cpp_output_token()
2544 fwrite (buffer, 1, 10, fp); in cpp_output_token()