diff --git a/BeefBuild/BeefProj.toml b/BeefBuild/BeefProj.toml index 67764f90..ee40eb4e 100644 --- a/BeefBuild/BeefProj.toml +++ b/BeefBuild/BeefProj.toml @@ -16,8 +16,8 @@ TargetName = "$(ProjectName)_d" OtherLinkFlags = "$(LinkFlags) Comdlg32.lib kernel32.lib user32.lib advapi32.lib shell32.lib IDEHelper64_d.lib Rpcrt4.lib Ole32.lib" CLibType = "Dynamic" BeefLibType = "DynamicDebug" -DebugCommandArguments = "-workspace=." -DebugWorkingDirectory = "$(WorkspaceDir)/../IDE/dist" +DebugCommandArguments = "-workspace=Elevated -config=Debug -platform=Win64 -verbosity=detailed -clean" +DebugWorkingDirectory = "c:\\Beef_website\\BeefTools\\BeefInstall" EnvironmentVars = ["_NO_DEBUG_HEAP=1"] PreprocessorMacros = ["DEBUG", "CLI"] @@ -89,4 +89,3 @@ BeefLibType = "Static" Type = "Folder" Path = "../IDE/src" Name = "ide" -AutoInclude = true diff --git a/BeefRT/BeefDbg/BeefDbg.vcxproj b/BeefRT/BeefDbg/BeefDbg.vcxproj index ed515f77..0e7c3021 100644 --- a/BeefRT/BeefDbg/BeefDbg.vcxproj +++ b/BeefRT/BeefDbg/BeefDbg.vcxproj @@ -588,6 +588,7 @@ false MultiThreadedDebug + ProgramDatabase Windows @@ -612,6 +613,7 @@ false MultiThreadedDebug + ProgramDatabase Windows @@ -636,6 +638,7 @@ false MultiThreadedDebugDLL + ProgramDatabase Windows diff --git a/BeefRT/BeefRT.vcxproj b/BeefRT/BeefRT.vcxproj index ae055d27..6e597827 100644 --- a/BeefRT/BeefRT.vcxproj +++ b/BeefRT/BeefRT.vcxproj @@ -540,6 +540,7 @@ MultiThreadedDebug stdcpp17 false + ProgramDatabase Windows @@ -563,6 +564,7 @@ MultiThreadedDebugDLL stdcpp17 false + ProgramDatabase Windows @@ -586,6 +588,7 @@ MultiThreadedDebug stdcpp17 false + ProgramDatabase Windows diff --git a/IDE/BeefProj.toml b/IDE/BeefProj.toml index e339ea8b..1bb38ef9 100644 --- a/IDE/BeefProj.toml +++ b/IDE/BeefProj.toml @@ -27,7 +27,7 @@ TargetDirectory = "$(WorkspaceDir)/dist" TargetName = "BeefIDE_d" OtherLinkFlags = "$(LinkFlags) Comdlg32.lib kernel32.lib user32.lib advapi32.lib shell32.lib IDEHelper64_d.lib" CLibType = "Dynamic" -DebugCommandArguments = "-workspace=c:\\beef\\BeefTools\\LogViewer" +DebugCommandArguments = "-proddir=C:\\Beef_website\\BeefTools\\BeefInstall\\StubUI" DebugWorkingDirectory = "c:\\Beef\\IDE\\Tests\\EmptyTest" EnvironmentVars = ["_NO_DEBUG_HEAP=1"] @@ -56,7 +56,7 @@ TargetName = "BeefIDE_d2" OtherLinkFlags = "$(LinkFlags) Comdlg32.lib kernel32.lib user32.lib advapi32.lib shell32.lib IDEHelper64_d.lib BeefySysLib64_d.lib wsock32.lib" CLibType = "Dynamic" BeefLibType = "DynamicDebug" -DebugCommandArguments = "-workspace=c:\\_beef\\testapp" +DebugCommandArguments = "-workspace=c:\\beef\\ide\\mintest" DebugWorkingDirectory = "$(ProjectDir)\\dist" EnvironmentVars = ["_NO_DEBUG_HEAP=1"] diff --git a/IDE/mintest/BeefSpace.toml b/IDE/mintest/BeefSpace.toml index 6442203f..fc86df7b 100644 --- a/IDE/mintest/BeefSpace.toml +++ b/IDE/mintest/BeefSpace.toml @@ -5,6 +5,7 @@ Projects = {mintest = {Path = "."}, minlib = {Path = "minlib"}, LibA = {Path = " StartupProject = "mintest" [Configs.Debug.Win32] +BfOptimizationLevel = "OgPlus" InitLocalVariables = true IntermediateType = "ObjectAndIRCode" ConfigSelections = {mintest2 = {Enabled = false}} diff --git a/IDE/mintest/src/main.bf b/IDE/mintest/src/main.bf index 837df4f4..84fdce26 100644 --- a/IDE/mintest/src/main.bf +++ b/IDE/mintest/src/main.bf @@ -1,5 +1,4 @@ - //♀Farts //Ãjaxa̐ḁ @@ -177,6 +176,9 @@ namespace Hey.Dude.Bro public static int Main(String[] args) { + int* iPtr = null; + *iPtr = 123; + Blurg.Hey(); /*while (true) diff --git a/IDE/mintest/src/main3.bf b/IDE/mintest/src/main3.bf index 7c042f08..981e9635 100644 --- a/IDE/mintest/src/main3.bf +++ b/IDE/mintest/src/main3.bf @@ -92,8 +92,50 @@ class Bloozer int mA; } +enum Zorf : IDisposable +{ + case A; + case B; + public void Dispose() + { + } +} + +class IFaceA +{ + public static void Fart() + { + + } +} + +class Zlips : IFaceA, IDisposable +{ + static void Fart() + { + + } + + public void Dispose() + { + PrintF("Disposed"); + } +} + +class Testo +{ + public this() + { + PrintF("Testo this %p\n", this); + } + + public ~this() + { + PrintF("Testo ~this %p\n", this); + } +} class Blurg { @@ -107,14 +149,79 @@ class Blurg } - void TestIt(int a, int b, int c) + void TestIt(String a, String b) { } + TestStruct GetTS() + { + return .(); + } + + static void Test(int a, int b) + { + + } + + static void Test(int a, int b, int c) + { + + } + + public static void Use(T val) where T : IFaceA + { + IFaceA.Fart(); + } + public static void Hey() { + Loop: + for (int i < 10) + { + defer + { + //for () + JLoop: for (int j < 5) + { + //continue Loop; + } + + //break JLoop; + + int z = 3; + + /*void Zorg() + { + + } + + Zorg();*/ + //return; + + //break Loop; + } + } + + defer + { + scope:: Testo(); + + int i = 0; + if (i == 0) + scope:: Testo(); + if (i == 1) + scope:: Testo(); + } + + + int aaaaaa = 123; + if (aaaaaa == 123) + return;//A + + int bbbbbbb = 222; + return;//B } } diff --git a/IDE/src/IDEApp.bf b/IDE/src/IDEApp.bf index 00a786c1..846db4fc 100644 --- a/IDE/src/IDEApp.bf +++ b/IDE/src/IDEApp.bf @@ -9430,6 +9430,14 @@ namespace IDE void ShowStartupFile() { + bool hasSourceShown = false; + WithSourceViewPanels(scope [&] (panel) => + { + hasSourceShown = true; + }); + if (hasSourceShown) + return; + if (mWorkspace.mStartupProject != null) { bool didShow = false; diff --git a/bin/build.bat b/bin/build.bat index fb428128..d6e6be81 100644 --- a/bin/build.bat +++ b/bin/build.bat @@ -71,6 +71,6 @@ IDE\dist\BeefBuild_d -proddir=BeefTools\BeefPerf -config=Release @EXIT /b 0 :HADERROR -@ECHO !!!!!FAILED!!!!! +@ECHO =================FAILED================= @POPD @EXIT /b %ERRORLEVEL% diff --git a/extern/llvm_build.bat b/extern/llvm_build.bat index 1cf551b1..0db636ff 100644 --- a/extern/llvm_build.bat +++ b/extern/llvm_build.bat @@ -1,26 +1,26 @@ @IF EXIST llvm-project GOTO LLVM_HAS -git clone --config core.autocrlf=false https://github.com/llvm/llvm-project.git llvm-project_8_0_0 -pushd llvm-project_8_0_0 +git clone --config core.autocrlf=false https://github.com/llvm/llvm-project.git llvm-project_8_0_1 +pushd llvm-project_8_0_1 GOTO :LLVM_SET :LLVM_HAS -pushd llvm-project_8_0_0 +pushd llvm-project_8_0_1 git pull origin master :LLVM_SET -git checkout llvmorg-8.0.0 +git checkout llvmorg-8.0.1 popd -@IF EXIST llvm_win64_8_0_0 GOTO HAS_CONFIG +@IF EXIST llvm_win64_8_0_1 GOTO HAS_CONFIG -mkdir llvm_win64_8_0_0 -cd llvm_win64_8_0_0 -cmake ../llvm-project_8_0_0/llvm -Thost=x64 -G"Visual Studio 15 2017 Win64" +mkdir llvm_win64_8_0_1 +cd llvm_win64_8_0_1 +cmake ../llvm-project_8_0_1/llvm -Thost=x64 -G"Visual Studio 15 2017 Win64" -DLLVM_USE_CRT_DEBUG:STRING="MTd" -DLLVM_USE_CRT_RELEASE:STRING="MT" @GOTO DOBUILD :HAS_CONFIG -cd llvm_win64_8_0_0 +cd llvm_win64_8_0_1 @GOTO DOBUILD :DOBUILD -cmake --build . --config Debug +cmake --build . --config Debug cmake --build . --config Release