Comments (5)
No problem, glad that luacheck helps!
from luacheck.
This behavior is correct, in local f = function() ... end
variable f
enters scope only after right hand side is evaluated, so that inside the function f
is global. This results in an error if you try to run the snippet:
lua: test.lua:5: attempt to call a nil value (global 'f')
stack traceback:
test.lua:5: in local 'f'
test.lua:12: in main chunk
[C]: in ?
(local function f() ... end
is sugar for local f; f = function() ... end
, so it works for recursive functions)
from luacheck.
Ah ok, you're right, but that was me trying to be smart and find a simple example... could you have a look at https://github.com/neovim/neovim/blob/master/test/unit/eval/helpers.lua#L29? That's where luacheck complains about the undefined variable "list", but shouldn't imho.
from luacheck.
It's the same, the function is broken and will error if the branch with the "recursive" call is hit, unless list
happens to be an existing global function. You should replace local list = function(...)
with local function list(...)
or local list; list = function(...)
.
from luacheck.
Wow, I couldn't imagine that this is an issue of "dead" code... thanks a lot!
from luacheck.
Related Issues (20)
- inline command `globals` doesn't work with variables on the same line HOT 3
- first line in Lua script starting with # causes error "expected statement near '#'" HOT 6
- Why is luarocks saying : Error: unknown option '-e' when installing luacheck...? HOT 2
- luacheck show warning when use "module" function in lua5.1 HOT 1
- [Question] Multiline if-then-else HOT 1
- Linter works but part of the checked file's schebang is coloured red HOT 1
- whitespaces around operators HOT 4
- Question: what are new_globals and new_read_globals? HOT 1
- Question: How to filter in luacheck.rc "globals" option? HOT 1
- HELP Wanted: i have installed luacheck but it gives me this error HOT 2
- Comment Error in parser.lua HOT 1
- Add (optional) rule to check consistency of indentation? HOT 6
- Does Luacheck will work on 5.4? HOT 2
- E011 expected '=' near 'if'
- [Question] E011: Expected `do` near `B10000000` HOT 2
- luacheck didn't work as expected HOT 2
- luacheck (on Linux Mint, at least) requires a rather old version of lua HOT 1
- Config not searched in `$XDG_CONFIG_HOME` on macOS HOT 2
- expression check HOT 3
- Are there currently test failures? Getting 83 failures on a fresh 'install' HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from luacheck.