comparison gcc/go/gofrontend/lex.h @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 84e7813d76e9
children
comparison
equal deleted inserted replaced
131:84e7813d76e9 145:1830386684a0
378 return ret; 378 return ret;
379 } 379 }
380 380
381 struct Linkname 381 struct Linkname
382 { 382 {
383 std::string ext_name; // External name. 383 std::string ext_name; // External name; empty to just export.
384 bool is_exported; // Whether the internal name is exported. 384 bool is_exported; // Whether the internal name is exported.
385 Location loc; // Location of go:linkname directive. 385 Location loc; // Location of go:linkname directive.
386 386
387 Linkname() 387 Linkname()
388 : ext_name(), is_exported(false), loc() 388 : ext_name(), is_exported(false), loc()
438 438
439 // Return whether C is a Unicode or "C" locale space character. 439 // Return whether C is a Unicode or "C" locale space character.
440 static bool 440 static bool
441 is_unicode_space(unsigned int c); 441 is_unicode_space(unsigned int c);
442 442
443 // Convert the specified hex char into an unsigned integer value.
444 static unsigned
445 hex_val(char c);
446
443 private: 447 private:
444 ssize_t 448 ssize_t
445 get_line(); 449 get_line();
446 450
447 bool 451 bool
456 earlier_location(int chars) const; 460 earlier_location(int chars) const;
457 461
458 static bool 462 static bool
459 is_hex_digit(char); 463 is_hex_digit(char);
460 464
465 static bool
466 is_base_digit(int base, char);
467
461 static unsigned char 468 static unsigned char
462 octal_value(char c) 469 octal_value(char c)
463 { return c - '0'; } 470 { return c - '0'; }
464 471
465 static unsigned
466 hex_val(char c);
467
468 Token 472 Token
469 make_invalid_token() 473 make_invalid_token()
470 { return Token::make_invalid_token(this->location()); } 474 { return Token::make_invalid_token(this->location()); }
471 475
472 Token 476 Token
479 483
480 Token 484 Token
481 gather_identifier(); 485 gather_identifier();
482 486
483 static bool 487 static bool
484 could_be_exponent(const char*, const char*); 488 could_be_exponent(int base, const char*, const char*);
485 489
486 Token 490 Token
487 gather_number(); 491 gather_number();
492
493 void
494 skip_exponent();
488 495
489 Token 496 Token
490 gather_character(); 497 gather_character();
491 498
492 Token 499 Token