1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-10 04:22:20 +02:00

Bug fixes, installer, [Export]

Fixed a bunch of bugs in aggregate const initializers
Fixed ZIP bugs
Fixed a compilation case where we change protection while reifying a type
Added another project kind - Dynamic Library
Added [Export] for DLL method exporting
Fixed some issues of things being  generated as __NOINLINE incorrectly
Fixed an issue with module extensions with not-yet-demanded on-demand methods
Started adding Installer
This commit is contained in:
Brian Fiete 2019-08-27 08:04:41 -07:00
parent efa22e51fb
commit 09016c8dc0
135 changed files with 3615 additions and 2337 deletions

View file

@ -15,7 +15,6 @@ using System;
using System.Threading;
using System.Collections.Generic;
using System.Diagnostics;
using System.Runtime.InteropServices;
using System.Diagnostics;
using System.Collections.Generic;
using System.Collections;
@ -178,13 +177,18 @@ namespace Hey.Dude.Bro
public static int Main(String[] args)
{
while (true)
Blurg.Hey();
/*while (true)
{
int a = 0;
}
int* iPtr = null;
*iPtr = 123;
*iPtr = 123;*/
GC.SetAutoCollectPeriod(20);
Thread.Sleep(1000);
String str = scope .("Boops!");
int len = str.GetLength();
@ -196,7 +200,7 @@ namespace Hey.Dude.Bro
//Thread.Sleep(500);
Test2(1, 2, 3, 4);
//Test2(1, 2, 3, 4);
thread.Join();

View file

@ -0,0 +1,7 @@
class Snorf
{
struct Bloog
{
int mA;
}
}

View file

@ -80,13 +80,6 @@ class ClassF : ClassE
}
class Snorf
{
public static void Borf(ClassD cd)
{
cd.Poo();
}
}
[NoDiscard("Use this value!")]
struct TestStruct
@ -97,70 +90,33 @@ struct TestStruct
class Blurg
{
public static void UseTS(TestStruct ts)
[Export, CLink, StdCall]
public static void Poof()
{
int c = ts.mA;
PrintF("Poofs!\n");
}
[NoDiscard("Why you no use me?")]
public static int UseMe()
[Export, CLink, StdCall]
public static void Poof2()
{
return 999;
}
public static TestStruct UseIt()
{
return .();
}
mixin FartOut(int a)
{
a = 0;
//let c = 1;
//c = 3;
//int b = 123;
//int c = 99;
PrintF("Poofs2!\n");
}
public static void Hey()
{
mixin Fart(int a)
{
//a = 0;
//int b = 123;
//int c = 99;
}
Snorf sn = scope .();
/*int c = 222;
Fart!(c);*/
Result<void*> voidPtrResult = default;
//int __CRASH_AUTOVARIABLE__ = 123;
//UseIt();
//UseMe();
//int a;
//void* val = voidPtrResult;
for (int i < 10)
{
int a = 0;
}
//Result<TestStruct> ts = .Ok(.());
TestStruct ts = .();
ts.mA = 111;
ts.mB = 222;
UseTS(ts);
//let val = ts.Get();
//Snorf.Bloog bl = .();
ClassD cd = null;
//let str = cd.mStr;
#if A || B
ClassC cc = scope .();
#endif
//Poof();
}
}