diff options
Diffstat (limited to 'src/LuaSL')
-rw-r--r-- | src/LuaSL/LuaSL_compile.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/LuaSL/LuaSL_compile.c b/src/LuaSL/LuaSL_compile.c index e31e157..492f234 100644 --- a/src/LuaSL/LuaSL_compile.c +++ b/src/LuaSL/LuaSL_compile.c | |||
@@ -478,7 +478,6 @@ LSL_Leaf *addOperation(LuaSL_compiler *compiler, LSL_Leaf *left, LSL_Leaf *lval, | |||
478 | break; | 478 | break; |
479 | 479 | ||
480 | case ST_ADD : | 480 | case ST_ADD : |
481 | // TODO - This doesn't work if the right side has been cast to a list. | ||
482 | if (OT_listList == lval->basicType) | 481 | if (OT_listList == lval->basicType) |
483 | { | 482 | { |
484 | lval->basicType = OT_list; | 483 | lval->basicType = OT_list; |
@@ -492,7 +491,13 @@ LSL_Leaf *addOperation(LuaSL_compiler *compiler, LSL_Leaf *left, LSL_Leaf *lval, | |||
492 | break; | 491 | break; |
493 | 492 | ||
494 | case ST_CONCATENATION : | 493 | case ST_CONCATENATION : |
495 | if ((OT_list == lType) && (OT_list != rType)) | 494 | // TODO - This doesn't work if the right side has been cast to a list. |
495 | if (OT_listList == lval->basicType) | ||
496 | { | ||
497 | lval->basicType = OT_list; | ||
498 | lval->toKen = tokens[LSL_LIST_ADD_LIST - lowestToken]; | ||
499 | } | ||
500 | else if ((OT_list == lType) && (OT_list != rType)) | ||
496 | { | 501 | { |
497 | lval->basicType = OT_list; | 502 | lval->basicType = OT_list; |
498 | lval->toKen = tokens[LSL_LIST_CONCAT - lowestToken]; | 503 | lval->toKen = tokens[LSL_LIST_CONCAT - lowestToken]; |