Validate function call arguments

- Add resolver/call_test.cc for new unit tests, and move a couple that
were in resolver/validation_test.cc to it

- Fix CalculateArrayLength transform so that it passes the address of
the u32 it creates to the internal function

- Fix tests broken as a result of this change

Bug: tint:664
Change-Id: If713f9828790cd51224d2392d42c01c0057cb652
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/53920
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
diff --git a/src/transform/calculate_array_length_test.cc b/src/transform/calculate_array_length_test.cc
index 557454b..4821c58 100644
--- a/src/transform/calculate_array_length_test.cc
+++ b/src/transform/calculate_array_length_test.cc
@@ -53,7 +53,7 @@
 [[stage(compute)]]
 fn main() {
   var tint_symbol_1 : u32 = 0u;
-  tint_symbol(sb, tint_symbol_1);
+  tint_symbol(sb, &(tint_symbol_1));
   let tint_symbol_2 : u32 = ((tint_symbol_1 - 4u) / 4u);
   var len : u32 = tint_symbol_2;
 }
@@ -97,7 +97,7 @@
 [[stage(compute)]]
 fn main() {
   var tint_symbol_1 : u32 = 0u;
-  tint_symbol(sb, tint_symbol_1);
+  tint_symbol(sb, &(tint_symbol_1));
   let tint_symbol_2 : u32 = ((tint_symbol_1 - 4u) / 4u);
   var a : u32 = tint_symbol_2;
   var b : u32 = tint_symbol_2;
@@ -143,7 +143,7 @@
 [[stage(compute)]]
 fn main() {
   var tint_symbol_1 : u32 = 0u;
-  tint_symbol(sb, tint_symbol_1);
+  tint_symbol(sb, &(tint_symbol_1));
   let tint_symbol_2 : u32 = ((tint_symbol_1 - 8u) / 64u);
   var len : u32 = tint_symbol_2;
 }
@@ -192,13 +192,13 @@
 fn main() {
   if (true) {
     var tint_symbol_1 : u32 = 0u;
-    tint_symbol(sb, tint_symbol_1);
+    tint_symbol(sb, &(tint_symbol_1));
     let tint_symbol_2 : u32 = ((tint_symbol_1 - 4u) / 4u);
     var len : u32 = tint_symbol_2;
   } else {
     if (true) {
       var tint_symbol_3 : u32 = 0u;
-      tint_symbol(sb, tint_symbol_3);
+      tint_symbol(sb, &(tint_symbol_3));
       let tint_symbol_4 : u32 = ((tint_symbol_3 - 4u) / 4u);
       var len : u32 = tint_symbol_4;
     }
@@ -263,10 +263,10 @@
 [[stage(compute)]]
 fn main() {
   var tint_symbol_1 : u32 = 0u;
-  tint_symbol(sb1, tint_symbol_1);
+  tint_symbol(sb1, &(tint_symbol_1));
   let tint_symbol_2 : u32 = ((tint_symbol_1 - 4u) / 4u);
   var tint_symbol_4 : u32 = 0u;
-  tint_symbol_3(sb2, tint_symbol_4);
+  tint_symbol_3(sb2, &(tint_symbol_4));
   let tint_symbol_5 : u32 = ((tint_symbol_4 - 16u) / 16u);
   var len1 : u32 = tint_symbol_2;
   var len2 : u32 = tint_symbol_5;