diff --git a/contribs/perlapi/libslurm/perl/reservation.c b/contribs/perlapi/libslurm/perl/reservation.c
index d922b8df6564e30b37c402cfbbb7063299a6db10..0d9a243f2cc1018e63a155c55bcd155718aefe58 100644
--- a/contribs/perlapi/libslurm/perl/reservation.c
+++ b/contribs/perlapi/libslurm/perl/reservation.c
@@ -174,7 +174,7 @@ hv_to_update_reservation_msg(HV *hv, resv_desc_msg_t *resv_msg)
 	FETCH_FIELD(hv, resv_msg, flags, uint16_t, FALSE);
 	FETCH_FIELD(hv, resv_msg, licenses, charp, FALSE);
 	FETCH_FIELD(hv, resv_msg, name, charp, FALSE);
-	FETCH_FIELD(hv, resv_msg, node_cnt, uint32_t, FALSE);
+	FETCH_PTR_FIELD(hv, resv_msg, node_cnt, "SLURM::uint32_t", FALSE);
 	FETCH_FIELD(hv, resv_msg, node_list, charp, FALSE);
 	FETCH_FIELD(hv, resv_msg, partition, charp, FALSE);
 	FETCH_FIELD(hv, resv_msg, start_time, time_t, FALSE);