  use num::flt2dec;
  use ops::Deref;
  use result;
-@@ -985,6 +654,7 @@ impl<'a> Formatter<'a> {
+@@ -991,6 +654,7 @@ impl<'a> Formatter<'a> {
      /// Takes the formatted parts and applies the padding.
      /// Assumes that the caller already has rendered the parts with required precision,
      /// so that `self.precision` can be ignored.

     fn write_formatted_parts(&mut self, formatted: &flt2dec::Formatted) -> Result {
         fn write_bytes(buf: &mut Write, s: &[u8]) -> Result {
             buf.write_str(unsafe { str::from_utf8_unchecked(s) })
@@ -1386,6 +1057,7 @@ impl<'a, T> Pointer for &'a mut T {
     }
 }
 

 pub mod flt2dec;
+#[cfg(not(disable_float))]
 pub mod dec2flt;
@@ -98,2 +93,3 @@
 }
+#[cfg(not(disable_float))]
 zero_one_impl_float! { f32 f64 }
@@ -1269,1 +1271,2 @@
+#[cfg(not(disable_float))]
 pub trait Float: Sized {
@@ -1472,1 +1473,2 @@
+#[cfg(not(disable_float))]
 pub use num::dec2flt::ParseFloatError;
diff -ru libcore/ops.rs libcore_patched/ops.rs
