From ad6a98f6ad3cce9d69648360d00d5dcd67d8ca0f Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Fri, 12 Aug 2022 19:58:10 -0700 Subject: Chapter 26.7 --- clox/src/vm.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'clox/src/vm.c') diff --git a/clox/src/vm.c b/clox/src/vm.c index c9556b2..601b128 100644 --- a/clox/src/vm.c +++ b/clox/src/vm.c @@ -163,8 +163,8 @@ static bool isFalsey(Value value) { } static void concatenate() { - ObjString *b = AS_STRING(pop()); - ObjString *a = AS_STRING(pop()); + ObjString *b = AS_STRING(peek(0)); + ObjString *a = AS_STRING(peek(1)); int length = a->length + b->length; char *chars = ALLOCATE(char, length + 1); @@ -173,6 +173,8 @@ static void concatenate() { chars[length] = '\0'; ObjString *result = takeString(chars, length); + pop(); + pop(); push(OBJ_VAL(result)); } -- cgit v1.2.3-54-g00ecf