diff --git a/lslopt/lslfoldconst.py b/lslopt/lslfoldconst.py index 92b3d0b..caf8054 100644 --- a/lslopt/lslfoldconst.py +++ b/lslopt/lslfoldconst.py @@ -1009,6 +1009,14 @@ class foldconst(object): # Convert llGetListLength(expr) to (expr != []) node = {'nt':'CONST', 't':'list', 'value':[]} parent[index] = node = {'nt':'!=', 't':'list', 'ch':[child[0], node]} + elif (node['name'] == 'llDumpList2String' + and child[1]['nt'] == 'CONST' + and child[1]['t'] in ('string', 'key') + and child[1]['value'] == u""): + # Convert llDumpList2String(expr, "") to (string)(expr) + del child[1] + node['nt'] = 'CAST' + del node['name'] elif SEFargs and 'SEF' in self.symtab[0][node['name']]: # The function is marked as SEF in the symbol table, and the # arguments are all side-effect-free. The result is SEF.