v0.13.7
errors and warnings / classes

errors and warnings / classes / E3004

E3004 error

Reserved member name

area
classes (x3xxx)
fails the build
yes

A class member uses a name the class runtime keeps for itself: new, __index, __newindex, __name, __super, __init, __ctor, __initFields, __class, __meta, __getters or __setters. Defining one would break construction or member lookup. Rename the member; to set up a new instance, write a constructor.

Example

× failswowlua
class Item    function new()    endendprint(Item)
✓ compileswowlua
class Item    constructor()    endendprint(Item.new())

The compiler reports it like this:

error[E3004]: `new` is a reserved member name
  ┌─ src/main.wowlua:2:14
  │
2 │     function new()
  │              ^^^ reserved
codemessage
E3007Metamethod on a widget class

Offline

terminal
$ wowlua explain E3004
E3004 (error): Reserved member name

source on GitHub ↗