diff --git a/src/common/rohc_time.h b/src/common/rohc_time.h
index 6366eae..933ea27 100644
--- a/src/common/rohc_time.h
+++ b/src/common/rohc_time.h
@@ -50,8 +50,8 @@ extern "C"
  */
 struct rohc_ts
 {
-	uint64_t sec;   /**< The seconds part of the timestamp */
-	uint64_t nsec;  /**< The nanoseconds part of the timestamp */
+	long sec;   /**< The seconds part of the timestamp */
+	long nsec;  /**< The nanoseconds part of the timestamp */
 };
 
 #ifdef __cplusplus
diff --git a/src/common/rohc_time_internal.h b/src/common/rohc_time_internal.h
index d6e9ec5..3959c81 100644
--- a/src/common/rohc_time_internal.h
+++ b/src/common/rohc_time_internal.h
@@ -36,7 +36,7 @@
 #endif
 
 
-static inline uint64_t rohc_time_interval(const struct rohc_ts begin,
+static inline long rohc_time_interval(const struct rohc_ts begin,
                                           const struct rohc_ts end)
 	__attribute__((warn_unused_result, const));
 
@@ -48,10 +48,10 @@ static inline uint64_t rohc_time_interval(const struct rohc_ts begin,
  * @param end    The end timestamp (in seconds and nanoseconds)
  * @return       The interval of time in microseconds
  */
-static inline uint64_t rohc_time_interval(const struct rohc_ts begin,
+static inline long rohc_time_interval(const struct rohc_ts begin,
                                           const struct rohc_ts end)
 {
-	uint64_t interval;
+	long interval;
 
 	interval = end.sec - begin.sec; /* difference btw seconds */
 	interval *= 1000000000UL;       /* convert in nanoseconds */
diff --git a/src/comp/rohc_comp.c b/src/comp/rohc_comp.c
index bb426c4..eb6be0e 100644
--- a/src/comp/rohc_comp.c
+++ b/src/comp/rohc_comp.c
@@ -2377,7 +2377,7 @@ static struct rohc_comp_ctxt *
 		/* all the contexts in the array were used, recycle the oldest context
 		 * to make some room */
 
-		uint64_t oldest;
+		long oldest;
 		rohc_cid_t i;
 
 		/* find the oldest context */
diff --git a/src/comp/rohc_comp_internals.h b/src/comp/rohc_comp_internals.h
index 2068e23..3a5bbf9 100644
--- a/src/comp/rohc_comp_internals.h
+++ b/src/comp/rohc_comp_internals.h
@@ -302,9 +302,9 @@ struct rohc_comp_ctxt
 	/** Whether the context is in use or not */
 	int used;
 	/** The time when the context was created (in seconds) */
-	uint64_t latest_used;
+	long latest_used;
 	/** The time when the context was last used (in seconds) */
-	uint64_t first_used;
+	long first_used;
 
 	/** The context unique ID (CID) */
 	rohc_cid_t cid;
diff --git a/src/decomp/rohc_decomp_rfc3095.c b/src/decomp/rohc_decomp_rfc3095.c
index 660315c..f5bc100 100644
--- a/src/decomp/rohc_decomp_rfc3095.c
+++ b/src/decomp/rohc_decomp_rfc3095.c
@@ -5818,9 +5818,9 @@ static bool is_sn_wraparound(const struct rohc_ts cur_arrival_time,
 {
 	const size_t arrival_times_index_last =
 		(arrival_times_index + ROHC_MAX_ARRIVAL_TIMES - 1) % ROHC_MAX_ARRIVAL_TIMES;
-	uint64_t cur_interval; /* in microseconds */
-	uint64_t avg_interval; /* in microseconds */
-	uint64_t min_interval; /* in microseconds */
+	long cur_interval; /* in microseconds */
+	long avg_interval; /* in microseconds */
+	long min_interval; /* in microseconds */
 
 	/* cannot use correction for SN wraparound if no arrival time was given
 	 * for the current packet, or if too few packets were received yet */
