You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
class Point {
x: Float
y: Float
z: Float
}
function Point(x: Float, y: Float, z: Float) = new Point { x = x; y = y; z = z }
foo = Point(1.0, 2.0, 3.0)
bar = foo.x
With the following error:
–– Pkl Error ––
A stack overflow occurred.
┌─ 643 repetitions of:
│ 7 | function Point(x: Float, y: Float, z: Float) = new Point { x = x; y = y; z = z }
│ ^
│ at test#Point.x (file:///.../test.pkl, line 7)
└─
10 | bar = foo.x
^^^^^
at test#bar (file:///.../test.pkl, line 10)
106 | text = renderer.renderDocument(value)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
at pkl.base#Module.output.text (https://github.com/apple/pkl/blob/3a31188/stdlib/base.pkl#L106)
The following works as expected, however:
function Point(x_: Float, y_: Float, z_: Float) = new Point { x = x_; y = y_; z = z_ }
I would expect object properties to be in a different "namespace" and such not cause a self-assignment.
The text was updated successfully, but these errors were encountered:
You might expect that, but does that mean you'd also expect that as soon as you're inside a function, you can't reference object properties at all anymore? How would you write this?
function Uniform(x_: Float): Point = new { x = x_; y = x; z = x }
The following fails:
With the following error:
The following works as expected, however:
I would expect object properties to be in a different "namespace" and such not cause a self-assignment.
The text was updated successfully, but these errors were encountered: