[debugger] Hook up basic types to casting.

This hooks up the builtin types (int, char*, etc.) to the type parsing
code such that things like "print (int*)foo" will work.

Main symbol lookup is not yet hooked up. That will be done in a future
pass.

Adds "void" to the list of builtin types. This required some additions
because of the weird way DWARF encodes these types (with no type
reference at all) is not compatible with us building up a type
hierarchy. This uses the "none" base type to represent void. Unit tests
are added for the handling of this.

Fixes C-style cast operator precedence. Previously "(void*)a[0]" would
be parsed as converting a to a void* and then taking the 0th item.

Change-Id: If8c3e1492241ac69f378dceed033d55fd184f744
15 files changed
tree: 77445c0ceb2ce921f6c769d56c65985f61fedd69
  1. boards/
  2. build/
  3. buildtools/
  4. bundles/
  5. docs/
  6. examples/
  7. garnet/
  8. peridot/
  9. products/
  10. scripts/
  11. sdk/
  12. src/
  13. third_party/
  14. tools/
  15. zircon/
  16. .clang-format
  17. .dir-locals.el
  18. .gitattributes
  19. .gitignore
  20. .gn
  21. AUTHORS
  22. BUILD.gn
  23. CODE_OF_CONDUCT.md
  24. CONTRIBUTING.md
  25. LICENSE
  26. OWNERS
  27. PATENTS
  28. README.md
  29. rustfmt.toml
README.md

Fuchsia

Pink + Purple == Fuchsia (a new operating system)

What is Fuchsia?

Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.

Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See the documentation.