mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 22:02:55 +01:00
Start including the prelude for testing. (#3861)
- Adds an empty prelude.carbon file - Imports that file in any non-Core package file - Adds --disable-prelude-import to avoid that - Adds --exclude-dump-file-prefix to be able to hide files from dumping - Used to hide core files (we can't do this by package name due to lex dumps, for example) - Restructures some tests to not rely on `i32`, particularly `alias` tests (which rely on a name ref) and tests with no prelude. I'm adding the framework for switching i32 to calling Int32 in the prelude, but I'm running into a separate error actually switching over. So that *mostly* works, but isn't quite ready for prime time. However, maybe the current state of this PR is still useful to review since it does a lot of the infrastructure work and adds the %Core everywhere?
This commit is contained in:
@@ -502,7 +502,9 @@ class NodeStack {
|
||||
auto RequireIdKind(Parse::NodeKind parse_kind, Id::Kind id_kind) const
|
||||
-> void {
|
||||
CARBON_CHECK(NodeKindToIdKind(parse_kind) == id_kind)
|
||||
<< "Unexpected Id::Kind mapping for " << parse_kind;
|
||||
<< "Unexpected Id::Kind mapping for " << parse_kind << ": expected "
|
||||
<< static_cast<int>(id_kind) << ", found "
|
||||
<< static_cast<int>(NodeKindToIdKind(parse_kind));
|
||||
}
|
||||
|
||||
// Require an entry to have the given Parse::NodeKind.
|
||||
|
||||
Reference in New Issue
Block a user