v0.13.7
errors and warnings / classes

errors and warnings / classes / E3040

E3040 error

Local or parameter named super inside a class body

area
classes (x3xxx)
fails the build
yes

A local or parameter named super inside a class body. There super means the superclass (super(...), super:speak()), so a local of that name would hide it. Rename the local.

Example

× failswowlua
class Animal    function speak()        local super = 1        print(super)    endendprint(Animal)
✓ compileswowlua
class Animal    function speak()        local base = 1        print(base)    endendprint(Animal)

The compiler reports it like this:

error[E3040]: `super` cannot be a local name inside a class body
  ┌─ src/main.wowlua:3:15
  │
3 │         local super = 1
  │               ^^^^^ here
codemessage
E3001super(...) missing, repeated, or after use of self

Offline

terminal
$ wowlua explain E3040
E3040 (error): Local or parameter named super inside a class body

source on GitHub ↗