diff --git a/src/test/contracts/let_multiple.mligo b/src/test/contracts/let_multiple.mligo
index c399f2952..08cb6dc3c 100644
--- a/src/test/contracts/let_multiple.mligo
+++ b/src/test/contracts/let_multiple.mligo
@@ -11,4 +11,28 @@ let main_paren (p: unit) : int = x + y
 let foobar : (int * int) = (23 , 42)
 let (foo : int) , (bar : int) = foobar
 
-let non_tuple_rhs (p: unit) : int = bar - foo 
+(* Here to prevent a regression of https://gitlab.com/ligolang/ligo/issues/63#note_254106580 *)
+
+let correct_values_bound (p: unit) : int * int =
+  foo, bar
+
+let non_tuple_rhs (p: unit) : int =
+  bar - foo
+
+(* Here to prevent a regression of https://gitlab.com/ligolang/ligo/issues/63#note_254106580 *)
+
+let big_tuple : (int * int * int * int * int) = (10, 20, 30, 40, 50)
+
+let (a: int), (b: int), (c: int), (d: int), (e: int) = big_tuple
+
+let correct_values_big_tuple (p: unit) : int * int * int * int * int =
+  a, b, c, d, e
+
+(* Here to prevent a regression of https://gitlab.com/ligolang/ligo/issues/63#note_254106580 *)
+
+let different_types: (int * string) = 10, "hello"
+
+let (greet_num: int), (greeting: string) = different_types
+
+let correct_values_different_types (p: unit) : int * string =
+  greet_num, greeting
diff --git a/src/test/integration_tests.ml b/src/test/integration_tests.ml
index afa219205..725db8ddd 100644
--- a/src/test/integration_tests.ml
+++ b/src/test/integration_tests.ml
@@ -1213,11 +1213,26 @@ let mligo_let_multiple () : unit result =
     let expected = e_int 6 in
     expect_eq program "main_paren" input expected
   in
+  let%bind () =
+    let input = e_unit () in
+    let expected = e_tuple [e_int 23 ; e_int 42] in
+    expect_eq program "correct_values_bound" input expected
+  in
   let%bind () =
     let input = e_unit () in
     let expected = e_int 19 in
     expect_eq program "non_tuple_rhs" input expected
   in
+  let%bind () =
+    let input = e_unit () in
+    let expected = e_tuple [e_int 10; e_int 20; e_int 30; e_int 40; e_int 50] in
+    expect_eq program "correct_values_big_tuple" input expected
+  in
+  let%bind () =
+    let input = e_unit () in
+    let expected = e_tuple [e_int 10 ; e_string "hello"] in
+    expect_eq program "correct_values_different_types" input expected
+  in
   ok ()
 
 let balance_constant () : unit result =