-
-
Notifications
You must be signed in to change notification settings - Fork 45
Open
Description
Describe the bug
Hello. When attempting to access class fields of a parent class, a runtime error occurs. You previously fixed a similar bug for methods.
To Reproduce
procedure main()
Child():setter(1)
? Child():getter()
Child():exportedField := 2
? Child():exportedField
wait
return
class Child from Parent
endclass
class Parent
exported:
inline class method initClass()
::classField := 0
::exportedField := 0
return
inline class method getter()
return ::classField
inline class method setter(n)
::classField := n
return
class var exportedField
hidden:
class var classField
endclass
Expected behavior (XBase++ exe)
Output
1
2
Actual behavior (X# exe)
Output
1
Unhandled exception: System.InvalidOperationException: The sequence contains no elements
в System.Linq.Enumerable.First[TSource](IEnumerable`1 source)
в XSharp.XPP.ClassObject.NoIvarPut(String cName, __Usual uValue)
в XSharp.RT.OOPHelpers.IVarPut(Object oObject, String cIVar, Object oValue, Boolean lSelf)
в XSharp.RT.Functions.IVarPut(Object oObject, String symInstanceVar, __Usual uValue)
в main.Exe.Functions.main(__Usual[] Xs$Args)
в main.Exe.Functions.Start(String[] Xs$Args)
Additional context
X# Compiler version 2.24.0.1 (Public)
-dialect:xBase++
-codepage:866
-lb -enforceself -memvar -xpp1 -vo1 -vo3 -vo4 -vo5 -vo9 -vo10 -vo12 -vo13 -vo14 -vo15 -vo16 -vo17
-reference:XSharp.Core.dll
-reference:XSharp.RT.dll
-reference:XSharp.XPP.dll
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels