Index: trunk/BNC/src/RTCM3/ephEncoder.cpp
===================================================================
--- trunk/BNC/src/RTCM3/ephEncoder.cpp	(revision 10901)
+++ trunk/BNC/src/RTCM3/ephEncoder.cpp	(revision 10903)
@@ -26,5 +26,5 @@
     GPSADDBITSFLOAT(16, eph._clock_drift, 1.0/static_cast<double>(1<<30)/static_cast<double>(1<<13))
     GPSADDBITSFLOAT(22, eph._clock_bias, 1.0/static_cast<double>(1<<30)/static_cast<double>(1<<1))
-    GPSADDBITS(8, eph._IODE)
+    GPSADDBITS(8, static_cast<int>(eph._IODE))
     GPSADDBITSFLOAT(16, eph._Crs, 1.0/static_cast<double>(1<<5))
     GPSADDBITSFLOAT(16, eph._Delta_n, M_PI/static_cast<double>(1<<30)/static_cast<double>(1<<13))
@@ -63,5 +63,5 @@
     GPSADDBITSFLOAT(8, eph._TGD, 1.0/static_cast<double>(1<<30)/static_cast<double>(1<<1))
     GPSADDBITSFLOAT(22, eph._Delta_n, M_PI/static_cast<double>(1<<30)/static_cast<double>(1<<11))
-    GPSADDBITS(8, eph._IODE) // Issue Of Data Ephemeris and Clock
+    GPSADDBITS(8, static_cast<int>(eph._IODE)) // Issue Of Data Ephemeris and Clock
     GPSADDBITS(10, 0) /* padding */
     if        (eph._health == 0.0) {
@@ -95,6 +95,7 @@
     GPSADDBITSFLOAT(22, eph._OMEGADOT, M_PI/static_cast<double>(1<<30)/static_cast<double>(1<<11))
     GPSADDBITSFLOAT(32, eph._i0, M_PI/static_cast<double>(1<<30)/static_cast<double>(1<<1))
-    GPSADDBITS(2, static_cast<int> (eph._s_bits_after_IDOT))
-    GPSADDBITS(2, static_cast<int> (eph._s_bits_after_i0))
+    GPSADDBITS(2, static_cast<int>(eph._s_bits_after_IDOT))
+    GPSADDBITS(2, static_cast<int>(eph._s_bits_after_i0))
+    GPSADDBITS(6, 0) /* padding */
   } else {
     GPSADDBITS(12, 1019)
@@ -104,5 +105,5 @@
     GPSADDBITS(2,eph._L2Codes)
     GPSADDBITSFLOAT(14, eph._IDOT, M_PI/static_cast<double>(1<<30)/static_cast<double>(1<<13))
-    GPSADDBITS(8, eph._IODE)
+    GPSADDBITS(8, static_cast<int>(eph._IODE))
     GPSADDBITS(16, static_cast<int>(eph._TOC.gpssec())>>4)
     GPSADDBITSFLOAT(8, eph._clock_driftrate, 1.0/static_cast<double>(1<<30)/static_cast<double>(1<<25))
