-- -- This file and its contents are supplied under the terms of the -- Common Development and Distribution License ("CDDL"), version 1.0. -- You may only use this file in accordance with the terms of version -- 1.0 of the CDDL. -- -- A full copy of the text of the CDDL should have accompanied this -- source. A copy of the CDDL is also available via the Internet at -- http://www.illumos.org/license/CDDL. -- -- -- Copyright (c) 2016 by Delphix. All rights reserved. -- -- Test recursion in LUA. Deep recursion should work because it does -- not use the C stack. The LUA stack is is allocated from the kernel's -- heap, up to the specified memory limit. arg = ... argv = arg["argv"] function f (x) if (x == 0) then return x end return f(x-1) + 1 end r = f(argv[1]) return r