cc_globals.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /* Copyright (C) 2016 Jeremiah Orians
  2. * Copyright (C) 2020 deesix <deesix@tuta.io>
  3. * This file is part of M2-Planet.
  4. *
  5. * M2-Planet is free software: you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License as published by
  7. * the Free Software Foundation, either version 3 of the License, or
  8. * (at your option) any later version.
  9. *
  10. * M2-Planet is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. * GNU General Public License for more details.
  14. *
  15. * You should have received a copy of the GNU General Public License
  16. * along with M2-Planet. If not, see <http://www.gnu.org/licenses/>.
  17. */
  18. /* What types we have */
  19. extern struct type* global_types;
  20. extern struct type* prim_types;
  21. /* What we are currently working on */
  22. extern struct token_list* global_token;
  23. /* Output reorder collections*/
  24. extern struct token_list* output_list;
  25. extern struct token_list* strings_list;
  26. extern struct token_list* globals_list;
  27. extern struct token_list* global_constant_list;
  28. /* Make our string collection more efficient */
  29. extern char* hold_string;
  30. extern int string_index;
  31. /* Our Target Architecture */
  32. extern int Architecture;
  33. extern int register_size;
  34. /* Allow us to have a single settable max string */
  35. extern int MAX_STRING;
  36. /* make default type integer */
  37. extern struct type* integer;
  38. /* enable bootstrap-mode */
  39. extern int BOOTSTRAP_MODE;
  40. /* enable preprocessor-only mode */
  41. extern int PREPROCESSOR_MODE;
  42. /* feature unsupported by cc_* */
  43. void maybe_bootstrap_error(char* feature);