diff --git a/src/stats.c b/src/stats.c
index b398d07..39247b6 100644
--- a/src/stats.c
+++ b/src/stats.c
@@ -567,7 +567,6 @@
 	const struct rate_ctr_desc *desc, void *sctx_)
 {
 	struct osmo_stats_reporter *srep;
-	int rc;
 	int64_t delta = rate_ctr_difference(ctr);
 
 	if (delta == 0)
@@ -581,10 +580,10 @@
 			       ctrg->idx, ctrg->desc->class_id))
 			return 0;
 
-		rc = osmo_stats_reporter_send_counter(srep, ctrg, desc,
+		osmo_stats_reporter_send_counter(srep, ctrg, desc,
 			ctr->current, delta);
 
-		/* TODO: handle rc (log?, inc counter(!)?) or remove it */
+		/* TODO: handle result (log?, inc counter(!)?) or remove it */
 	}
 
 	return 0;
@@ -614,7 +613,6 @@
 	struct osmo_stat_item_group *statg, struct osmo_stat_item *item, void *sctx_)
 {
 	struct osmo_stats_reporter *srep;
-	int rc;
 	int32_t idx = current_stat_item_index;
 	int32_t value;
 
@@ -627,7 +625,7 @@
 					statg->idx, statg->desc->class_id))
 				return 0;
 
-			rc = osmo_stats_reporter_send_item(srep, statg,
+			osmo_stats_reporter_send_item(srep, statg,
 				item->desc, value);
 		}
 	}
@@ -648,7 +646,6 @@
 static int handle_counter(struct osmo_counter *counter, void *sctx_)
 {
 	struct osmo_stats_reporter *srep;
-	int rc;
 	struct rate_ctr_desc desc = {0};
 	/* Fake a rate counter description */
 	desc.name = counter->name;
@@ -663,10 +660,10 @@
 		if (!srep->running)
 			continue;
 
-		rc = osmo_stats_reporter_send_counter(srep, NULL, &desc,
+		osmo_stats_reporter_send_counter(srep, NULL, &desc,
 			counter->value, delta);
 
-		/* TODO: handle rc (log?, inc counter(!)?) */
+		/* TODO: handle result (log?, inc counter(!)?) */
 	}
 
 	return 0;
