(1) ``` // OutOfRangeNegativeIndex.lslp default { state_entry() { string s = llGetSubString("0123456789", -11, -11); llOwnerSay("s = " + s + ", length = " + (string)llStringLength(s)); list l = llList2List([0, 1, 2, 3, 4, 5, 6, 7, 8, 9], -11, -11); llOwnerSay("l = [" + llDumpList2String(l, ", ") + "]"); } } ``` was converted to (2) ``` // OutOfRangeNegativeIndex.lslp // 2016-11-11 13:40:30 - LSLForge (0.1.9) generated // OutOfRangeNegativeIndex.lslp default { state_entry() { string s = "0"; llOwnerSay(((("s = " + s) + ", length = ") + ((string)llStringLength(s)))); list l = [0]; llOwnerSay((("l = [" + llDumpList2String(l,", ")) + "]")); } } ``` But result of (1) is: [20:31] Object: s = , length = 0 [20:31] Object: l = [] and (2) [20:32] Object: s = 0, length = 1 [20:32] Object: l = [0] It is a bug in InternalLLFuncs.hs