Big type inference improvements

This commit is contained in:
nub31
2025-10-22 12:55:31 +02:00
parent 576369db19
commit 414251c839
8 changed files with 205 additions and 163 deletions

View File

@@ -7,10 +7,7 @@ using NubLang.Syntax;
var diagnostics = new List<Diagnostic>();
var syntaxTrees = new List<SyntaxTree>();
var nubFiles = args.Where(x => Path.GetExtension(x) == ".nub").ToArray();
var objectFileArgs = args.Where(x => Path.GetExtension(x) is ".o" or ".a").ToArray();
foreach (var file in nubFiles)
foreach (var file in args)
{
var tokenizer = new Tokenizer(file, File.ReadAllText(file));
tokenizer.Tokenize();
@@ -26,7 +23,7 @@ foreach (var file in nubFiles)
var modules = Module.Collect(syntaxTrees);
var compilationUnits = new List<CompilationUnit>();
for (var i = 0; i < nubFiles.Length; i++)
for (var i = 0; i < args.Length; i++)
{
var typeChecker = new TypeChecker(syntaxTrees[i], modules);
var compilationUnit = typeChecker.Check();
@@ -49,9 +46,9 @@ var cPaths = new List<string>();
Directory.CreateDirectory(".build");
for (var i = 0; i < nubFiles.Length; i++)
for (var i = 0; i < args.Length; i++)
{
var file = nubFiles[i];
var file = args[i];
var compilationUnit = compilationUnits[i];
var generator = new Generator(compilationUnit);