diff --git a/library/Osmocom_CTRL_Functions.ttcn b/library/Osmocom_CTRL_Functions.ttcn
index 294fe33..15cb26f 100644
--- a/library/Osmocom_CTRL_Functions.ttcn
+++ b/library/Osmocom_CTRL_Functions.ttcn
@@ -268,14 +268,14 @@
 	 * Set the test verdict accordingly. */
 	function f_counter_name_vals_expect(IPA_CTRL_PT pt, charstring instance_name, integer instance_nr,
 					    CounterNameVals vals) {
-		var CounterNameVals now := f_counter_name_vals_get(pt, instance_name, instance_nr, vals);
+		var CounterNameVals last := f_counter_name_vals_get(pt, instance_name, instance_nr, vals);
 		for (var integer i := 0; i < lengthof(vals); i := i + 1) {
-			if (now[i].name != vals[i].name) {
+			if (last[i].name != vals[i].name) {
 				setverdict(fail, "Internal error");
 			}
-			if (now[i].val != vals[i].val) {
+			if (last[i].val != vals[i].val) {
 				setverdict(fail, "Rate counter mismatch: ", instance_name, " ", instance_nr,
-					   " ", vals[i].name, " is at ", now[i].val, " but expected ", vals[i].val);
+					   " ", vals[i].name, " is at ", last[i].val, " but expected ", vals[i].val);
 			}
 		}
 		setverdict(pass);
