Index: XIOS/trunk/src/interface/c/icdate.cpp
===================================================================
--- XIOS/trunk/src/interface/c/icdate.cpp	(revision 1542)
+++ XIOS/trunk/src/interface/c/icdate.cpp	(revision 1622)
@@ -35,4 +35,5 @@
 {
   long long int cxios_date_convert_to_seconds(cxios_date date_c)
+  TRY
   {
     xios::CDate date = xios::CDate(getCalendar("long long int cxios_date_convert_to_seconds(cxios_date date_c)"),
@@ -41,6 +42,8 @@
     return date;
   }
+  CATCH_DUMP_STACK
 
   void cxios_date_convert_to_string(cxios_date date_c, char* str, int str_size)
+  TRY
   {
     xios::CDate date = xios::CDate(getCalendar("void cxios_date_convert_to_string(cxios_date date_c, char* str, int str_size)"),
@@ -51,6 +54,8 @@
       ERROR("void cxios_date_convert_to_string(cxios_date date_c, char* str, int str_size)", << "Input string is too short");
   }
+  CATCH_DUMP_STACK
 
   cxios_date cxios_date_convert_from_string(const char* str, int str_size)
+  TRY
   {
     std::string date_str;
@@ -63,6 +68,8 @@
     return { date.getYear(), date.getMonth(), date.getDay(), date.getHour(), date.getMinute(), date.getSecond() };
   }
+  CATCH_DUMP_STACK
 
   cxios_date cxios_date_add_duration(cxios_date date_c, cxios_duration dur_c)
+  TRY
   {
     xios::CDate date = xios::CDate(getCalendar("cxios_date cxios_date_add_duration(cxios_date date_c, cxios_duration dur_c)"),
@@ -73,6 +80,8 @@
     return { res.getYear(), res.getMonth(), res.getDay(), res.getHour(), res.getMinute(), res.getSecond() };
   }
+  CATCH_DUMP_STACK
 
   cxios_date cxios_date_sub_duration(cxios_date date_c, cxios_duration dur_c)
+  TRY
   {
     xios::CDate date = xios::CDate(getCalendar("cxios_date cxios_date_sub_duration(cxios_date date_c, cxios_duration dur_c)"),
@@ -84,6 +93,8 @@
     return { res.getYear(), res.getMonth(), res.getDay(), res.getHour(), res.getMinute(), res.getSecond() };
   }
+  CATCH_DUMP_STACK
 
   cxios_duration cxios_date_sub(cxios_date date1_c, cxios_date date2_c)
+  TRY
   {
     xios::CDate date1 = xios::CDate(getCalendar("cxios_duration cxios_date_sub(cxios_date date1_c, cxios_date date2_c)"),
@@ -96,6 +107,8 @@
     return { res.year, res.month, res.day, res.hour, res.minute, res.second, res.timestep };
   }
+  CATCH_DUMP_STACK
 
   bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)
+  TRY
   {
     xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"),
@@ -107,6 +120,8 @@
     return (date1 == date2);
   }
+  CATCH_DUMP_STACK
 
   bool cxios_date_neq(cxios_date date1_c, cxios_date date2_c)
+  TRY
   {
     xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"),
@@ -118,6 +133,8 @@
     return (date1 != date2);
   }
+  CATCH_DUMP_STACK
 
   bool cxios_date_lt(cxios_date date1_c, cxios_date date2_c)
+  TRY
   {
     xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"),
@@ -129,6 +146,8 @@
     return (date1 < date2);
   }
+  CATCH_DUMP_STACK
 
   bool cxios_date_le(cxios_date date1_c, cxios_date date2_c)
+  TRY
   {
     xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"),
@@ -140,6 +159,8 @@
     return (date1 <= date2);
   }
+  CATCH_DUMP_STACK
 
   bool cxios_date_gt(cxios_date date1_c, cxios_date date2_c)
+  TRY
   {
     xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"),
@@ -151,6 +172,8 @@
     return (date1 > date2);
   }
+  CATCH_DUMP_STACK
 
   bool cxios_date_ge(cxios_date date1_c, cxios_date date2_c)
+  TRY
   {
     xios::CDate date1 = xios::CDate(getCalendar("bool cxios_date_eq(cxios_date date1_c, cxios_date date2_c)"),
@@ -162,6 +185,8 @@
     return (date1 >= date2);
   }
+  CATCH_DUMP_STACK
 
   int cxios_date_get_second_of_year(cxios_date date_c)
+  TRY
   {
     xios::CDate date = xios::CDate(getCalendar("int cxios_date_get_second_of_year(cxios_date date_c)"),
@@ -170,6 +195,8 @@
     return date.getSecondOfYear();
   }
+  CATCH_DUMP_STACK
 
   double cxios_date_get_day_of_year(cxios_date date_c)
+  TRY
   {
     xios::CDate date = xios::CDate(getCalendar("int cxios_date_get_day_of_year(cxios_date date_c)"),
@@ -178,6 +205,8 @@
     return date.getDayOfYear();
   }
+  CATCH_DUMP_STACK
 
   double cxios_date_get_fraction_of_year(cxios_date date_c)
+  TRY
   {
     xios::CDate date = xios::CDate(getCalendar("int cxios_date_get_fraction_of_year(cxios_date date_c)"),
@@ -186,6 +215,8 @@
     return date.getFractionOfYear();
   }
+  CATCH_DUMP_STACK
 
   int cxios_date_get_second_of_day(cxios_date date_c)
+  TRY
   {
     xios::CDate date = xios::CDate(getCalendar("int cxios_date_get_second_of_day(cxios_date date_c)"),
@@ -194,6 +225,8 @@
     return date.getSecondOfDay();
   }
+  CATCH_DUMP_STACK
 
   double cxios_date_get_fraction_of_day(cxios_date date_c)
+  TRY
   {
     xios::CDate date = xios::CDate(getCalendar("int cxios_date_get_fraction_of_day(cxios_date date_c)"),
@@ -202,3 +235,4 @@
     return date.getFractionOfDay();
   }
+  CATCH_DUMP_STACK
 } // extern "C"
