Start populating named entities in relevant locations. (#919)

This starts detecting naming collisions as a consequence of being able to determine when the name is declared twice in a given scope.



Co-authored-by: Geoff Romer <gromer@google.com>
This commit is contained in:
Jon Meow
2021-11-03 08:04:13 -07:00
committed by GitHub
co-authored by Geoff Romer
parent 82a870cfcd
commit 27e084d37a
25 changed files with 586 additions and 30 deletions
+3
View File
@@ -9,6 +9,7 @@
#include "executable_semantics/ast/declaration.h"
#include "executable_semantics/ast/library_name.h"
#include "executable_semantics/ast/static_scope.h"
#include "executable_semantics/common/nonnull.h"
namespace Carbon {
@@ -23,6 +24,8 @@ struct AST {
std::vector<LibraryName> imports;
// The file's ordered declarations.
std::vector<Nonnull<Declaration*>> declarations;
// Names declared at the top level of the file.
StaticScope static_scope;
};
} // namespace Carbon