diff --git a/src/mtime_t_timedelta.inc b/src/mtime_t_timedelta.inc
index c92b0703a9981178e29dbe6ec768596036f65a92..b348412f3a9edc0c533a543e04f5159a9ab0a654 100644
--- a/src/mtime_t_timedelta.inc
+++ b/src/mtime_t_timedelta.inc
@@ -19,7 +19,7 @@
        call c_f_pointer(c_pointer, td_tmp)
        t_timedelta_assign_string%td = td_tmp
        t_timedelta_assign_string%td%sign = td_tmp%sign
-       call my_deallocatetimedelta(c_pointer)
+       CALL my_deallocatetimedelta(c_pointer)
     end if
   END FUNCTION t_timedelta_assign_string
 
@@ -340,16 +340,18 @@
     TYPE (t_timedelta)             :: added_td
     CLASS(t_timedelta), INTENT(IN) :: this
     TYPE (t_timedelta), INTENT(in) :: td
-    TYPE (c_ptr)                   :: c_pointer1, c_pointer2, dummy_ptr
+    TYPE (c_ptr)                   :: c_pointer1, c_pointer2, c_pointer3, dummy_ptr
     TYPE(timedelta),    POINTER    :: td_tmp
 
     c_pointer1 = this%get_c_pointer()
     c_pointer2 = td%get_c_pointer()
+    c_pointer3 = td%get_c_pointer()
 
-    dummy_ptr = my_elementwiseaddtimedeltatotimedelta(c_pointer1, c_pointer2, c_pointer1)
+    dummy_ptr = my_elementwiseaddtimedeltatotimedelta(c_pointer1, c_pointer2, c_pointer3)
     CALL handle_errno(.NOT. C_ASSOCIATED(dummy_ptr), 0 * 100 + 2, __FILE__, __LINE__)
-    CALL C_F_POINTER(c_pointer1, td_tmp)
+    CALL C_F_POINTER(c_pointer3, td_tmp)
     CALL my_deallocatedatetime(c_pointer1)
     CALL my_deallocatedatetime(c_pointer2)
     added_td%td = td_tmp
+    CALL my_deallocatedatetime(c_pointer3)
   END FUNCTION t_timedelta_addElementWise
diff --git a/src/mtime_timedelta.c b/src/mtime_timedelta.c
index 29ce00c9f5dff35f1cfcdb631e6841fd654811a1..61914b4d67499793d16526778a9583df538003cd 100644
--- a/src/mtime_timedelta.c
+++ b/src/mtime_timedelta.c
@@ -1913,6 +1913,8 @@ elementwiseScalarMultiplyTimeDeltaDP(struct _timedelta* base_td, double lambda,
  *
  * @return td_return
  *         A pointer to struct _timedelta. The filled structure containing the added timedelta values.
+ *
+ * @note   The @p td_return must not be chosen to be one of the arguments @p td1 , @p td2 !
  */
 struct _timedelta*
 elementwiseAddTimeDeltatoTimeDelta(struct _timedelta* td1, struct _timedelta* td2,  struct _timedelta* td_return)