From 634681ce2bb36cd686943102a0f071cd6a09049f Mon Sep 17 00:00:00 2001 From: Melodi <62381002+Melodi17@users.noreply.github.com> Date: Wed, 27 Aug 2025 21:22:55 +1000 Subject: fixed bugs and revolutionized the universe --- Compiler/Program.cs | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'Compiler/Program.cs') diff --git a/Compiler/Program.cs b/Compiler/Program.cs index 9259205..3a277a1 100644 --- a/Compiler/Program.cs +++ b/Compiler/Program.cs @@ -1,10 +1,12 @@ namespace Q1.Compiler; +using System.Text; using Antlr4.Runtime; using CommandLine; +using visitors; using Parser = CommandLine.Parser; -class Program +public class Program { static void Main(string[] args) { @@ -12,15 +14,15 @@ class Program { with.CaseInsensitiveEnumValues = true; }); - - commandLineParser.ParseArguments(args) + + commandLineParser + .ParseArguments(args) .WithParsed(Program.Main); } - static void Main(CompilerOptions options) + public static void Main(CompilerOptions options) { - Environment.CurrentDirectory = Path.GetDirectoryName(options.InputFile) ?? Environment.CurrentDirectory; - options.InputFile = Path.GetFileName(options.InputFile); + options.InputFile = options.InputFile; try { @@ -32,10 +34,14 @@ class Program CGrammarParser parser = new(tokenStream); parser.RemoveErrorListeners(); - CCompilerVisitor compiler = new(options.CommentCompilationMode); + Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); + Encoding encoding = Encoding.GetEncoding(437); + CCompilerVisitor compiler = new(options.CommentCompilationMode, encoding); IEnumerable result = compiler.Compile(parser.program()); File.WriteAllLines(options.OutputFile, result); + + Console.WriteLine("Compilation successful."); } catch (CompilerException ex) { -- cgit v1.3.1