1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-15 14:54:09 +02:00
Beef/IDE/Tests/Test1/src/HotSwap_BaseChange.bf
Brian Fiete a367b8165f Win32 debugging fixes, more work on custom compile commands
Fixed working dir for 'launch'
Fixed attaching to process - stack trace wasn't updating properly
Fixed more custom compile stuff, and BeefySysLib bin destination
Fixed linking issues related to Bfp* and Bp* exports in both BeefRT and BeefySysLib
Fixed a crash with conditional breakpoints
Fixed release mode IDE issues (related to hot swap breakpoints)
Fixed hotswapping type data with LLVM builds
Fixed 'Pause' state processing Running_ToTempBreakpoint for ScriptManager
Fixed Win32 step out when there's an ESP adjustment at the return site
Made step-out skip over "unimportant" instructions at return site
2019-08-29 14:19:07 -07:00

144 lines
1.8 KiB
Beef

#pragma warning disable 168
namespace IDETest
{
class HotSwap_BaseChange
{
class ClassA
{
public virtual int MethodA0()
{
return 100;
}
public virtual int MethodA1()
{
return 101;
}
}
class ClassB
{
public virtual int MethodB0()
{
return 200;
}
/*ClassB_MethodB1
public virtual int MethodB1()
{
return 201;
}
*/
}
/*ClassC_0
class ClassC : ClassA
{
public virtual int MethodC0()
{
return 300;
}
}
*/
/*ClassC_1
class ClassC : ClassB
{
public virtual int MethodC0()
{
return 300;
}
}
*/
/*ClassC_2
class ClassC : ClassB
{
public virtual int MethodC0()
{
return 1300;
}
public virtual int MethodC1()
{
return 1301;
}
}
*/
/*ClassC_3
class ClassC : ClassA
{
// FAILS
public this() : base(123)
{
}
public virtual int MethodC0()
{
return 300;
}
}
*/
static void DoTest0()
{
//PrintF("Hey!\n");
/*DoTest0_Body
ClassC cc = scope .();
int a0 = cc.MethodA0();
int a1 = cc.MethodA1();
int c0 = cc.MethodC0();
*/
}
static void DoTest1()
{
/*DoTest1_Body
ClassC cc = scope .();
int b0 = cc.MethodB0();
int c0 = cc.MethodC0();
b0 = cc.MethodB0();
c0 = cc.MethodC0();
DoTest2(cc);
*/
}
/*DoTest2_Decl
static void DoTest2(ClassC cc)
{
/*DoTest2_Body
int b0 = cc.MethodB0();
int b1 = cc.MethodB1();
int c0 = cc.MethodC0();
int c1 = cc.MethodC1();
*/
}
*/
static void DoTest3()
{
/*DoTest3_Body
ClassC cc = scope .();
*/
}
public static void Test()
{
// Reify these methods and types
ClassA ca = scope .();
ca.MethodA0();
ca.MethodA1();
ClassB cb = scope .();
cb.MethodB0();
int a = 0;
//Test_Start
DoTest0();
DoTest1();
DoTest3();
}
}
}