--- quick-xml.orig/src/se/key.rs
+++ quick-xml/src/se/key.rs
@@ -236,3 +236,4 @@
     serialize_as!(i64_:   -42000000000000i64   => "-42000000000000");
-    serialize_as!(isize_: -42000000000000isize => "-42000000000000");
+    #[cfg(not(target_pointer_width = "32"))]serialize_as!(isize_: -42000000000000isize => "-42000000000000");
+    #[cfg(target_pointer_width = "32")]serialize_as!(isize_: -42000000isize => "-42000000");
 
@@ -242,3 +243,4 @@
     serialize_as!(u64_:   42000000000000u64   => "42000000000000");
-    serialize_as!(usize_: 42000000000000usize => "42000000000000");
+    #[cfg(not(target_pointer_width = "32"))]serialize_as!(usize_: 42000000000000usize => "42000000000000");
+    #[cfg(target_pointer_width = "32")]serialize_as!(usize_: 42000000usize => "42000000");
 
--- quick-xml.orig/src/se/content.rs
+++ quick-xml/src/se/content.rs
@@ -597,3 +597,4 @@
         serialize_as!(i64_:   -42000000000000i64   => "-42000000000000", Text);
-        serialize_as!(isize_: -42000000000000isize => "-42000000000000", Text);
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(isize_: -42000000000000isize => "-42000000000000", Text);
+        #[cfg(target_pointer_width = "32")]serialize_as!(isize_: -42000000isize => "-42000000", Text);
 
@@ -603,3 +604,4 @@
         serialize_as!(u64_:   42000000000000u64   => "42000000000000", Text);
-        serialize_as!(usize_: 42000000000000usize => "42000000000000", Text);
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(usize_: 42000000000000usize => "42000000000000", Text);
+        #[cfg(target_pointer_width = "32")]serialize_as!(usize_: 42000000usize => "42000000", Text);
 
@@ -727,3 +729,4 @@
             text!(i64_:   -42000000000000i64   => "-42000000000000");
-            text!(isize_: -42000000000000isize => "-42000000000000");
+            #[cfg(not(target_pointer_width = "32"))]text!(isize_: -42000000000000isize => "-42000000000000");
+            #[cfg(target_pointer_width = "32")]text!(isize_: -42000000isize => "-42000000");
 
@@ -733,3 +736,4 @@
             text!(u64_:   42000000000000u64   => "42000000000000");
-            text!(usize_: 42000000000000usize => "42000000000000");
+            #[cfg(not(target_pointer_width = "32"))]text!(usize_: 42000000000000usize => "42000000000000");
+            #[cfg(target_pointer_width = "32")]text!(usize_: 42000000usize => "42000000");
 
@@ -854,3 +858,4 @@
             value!(i64_:   -42000000000000i64   => "-42000000000000");
-            value!(isize_: -42000000000000isize => "-42000000000000");
+            #[cfg(not(target_pointer_width = "32"))]value!(isize_: -42000000000000isize => "-42000000000000");
+            #[cfg(target_pointer_width = "32")]value!(isize_: -42000000isize => "-42000000");
 
@@ -860,3 +865,4 @@
             value!(u64_:   42000000000000u64   => "42000000000000");
-            value!(usize_: 42000000000000usize => "42000000000000");
+            #[cfg(not(target_pointer_width = "32"))]value!(usize_: 42000000000000usize => "42000000000000");
+            #[cfg(target_pointer_width = "32")]value!(usize_: 42000000usize => "42000000");
 
@@ -1036,3 +1042,4 @@
         serialize_as!(i64_:   -42000000000000i64   => "-42000000000000", Text);
-        serialize_as!(isize_: -42000000000000isize => "-42000000000000", Text);
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(isize_: -42000000000000isize => "-42000000000000", Text);
+        #[cfg(target_pointer_width = "32")]serialize_as!(isize_: -42000000isize => "-42000000", Text);
 
@@ -1042,3 +1049,4 @@
         serialize_as!(u64_:   42000000000000u64   => "42000000000000", Text);
-        serialize_as!(usize_: 42000000000000usize => "42000000000000", Text);
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(usize_: 42000000000000usize => "42000000000000", Text);
+        #[cfg(target_pointer_width = "32")]serialize_as!(usize_: 42000000usize => "42000000", Text);
 
@@ -1180,3 +1188,4 @@
             text!(i64_:   -42000000000000i64   => "-42000000000000");
-            text!(isize_: -42000000000000isize => "-42000000000000");
+            #[cfg(not(target_pointer_width = "32"))]text!(isize_: -42000000000000isize => "-42000000000000");
+            #[cfg(target_pointer_width = "32")]text!(isize_: -42000000isize => "-42000000");
 
@@ -1186,3 +1195,4 @@
             text!(u64_:   42000000000000u64   => "42000000000000");
-            text!(usize_: 42000000000000usize => "42000000000000");
+            #[cfg(not(target_pointer_width = "32"))]text!(usize_: 42000000000000usize => "42000000000000");
+            #[cfg(target_pointer_width = "32")]text!(usize_: 42000000usize => "42000000");
 
@@ -1319,3 +1329,4 @@
             value!(i64_:   -42000000000000i64   => "-42000000000000");
-            value!(isize_: -42000000000000isize => "-42000000000000");
+            #[cfg(not(target_pointer_width = "32"))]value!(isize_: -42000000000000isize => "-42000000000000");
+            #[cfg(target_pointer_width = "32")]value!(isize_: -42000000isize => "-42000000");
 
@@ -1325,3 +1336,4 @@
             value!(u64_:   42000000000000u64   => "42000000000000");
-            value!(usize_: 42000000000000usize => "42000000000000");
+            #[cfg(not(target_pointer_width = "32"))]value!(usize_: 42000000000000usize => "42000000000000");
+            #[cfg(target_pointer_width = "32")]value!(usize_: 42000000usize => "42000000");
 
--- quick-xml.orig/src/se/element.rs
+++ quick-xml/src/se/element.rs
@@ -666,3 +666,4 @@
         serialize_as!(i64_:   -42000000000000i64   => "<root>-42000000000000</root>");
-        serialize_as!(isize_: -42000000000000isize => "<root>-42000000000000</root>");
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(isize_: -42000000000000isize => "<root>-42000000000000</root>");
+        #[cfg(target_pointer_width = "32")]serialize_as!(isize_: -42000000isize => "<root>-42000000</root>");
 
@@ -672,3 +673,4 @@
         serialize_as!(u64_:   42000000000000u64   => "<root>42000000000000</root>");
-        serialize_as!(usize_: 42000000000000usize => "<root>42000000000000</root>");
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(usize_: 42000000000000usize => "<root>42000000000000</root>");
+        #[cfg(target_pointer_width = "32")]serialize_as!(usize_: 42000000usize => "<root>42000000</root>");
 
@@ -768,3 +770,4 @@
                 text!(i64_:   -42000000000000i64   => "-42000000000000");
-                text!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]text!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(target_pointer_width = "32")]text!(isize_: -42000000isize => "-42000000");
 
@@ -774,3 +777,4 @@
                 text!(u64_:   42000000000000u64   => "42000000000000");
-                text!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]text!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(target_pointer_width = "32")]text!(usize_: 42000000usize => "42000000");
 
@@ -895,3 +899,4 @@
                 text!(i64_:   -42000000000000i64   => "-42000000000000");
-                text!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]text!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(target_pointer_width = "32")]text!(isize_: -42000000isize => "-42000000");
 
@@ -901,3 +906,4 @@
                 text!(u64_:   42000000000000u64   => "42000000000000");
-                text!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]text!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(target_pointer_width = "32")]text!(usize_: 42000000usize => "42000000");
 
@@ -1026,3 +1032,4 @@
                 value!(i64_:   -42000000000000i64   => "-42000000000000");
-                value!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]value!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(target_pointer_width = "32")]value!(isize_: -42000000isize => "-42000000");
 
@@ -1032,3 +1039,4 @@
                 value!(u64_:   42000000000000u64   => "42000000000000");
-                value!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]value!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(target_pointer_width = "32")]value!(usize_: 42000000usize => "42000000");
 
@@ -1132,3 +1140,4 @@
                 value!(i64_:   -42000000000000i64   => "-42000000000000");
-                value!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]value!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(target_pointer_width = "32")]value!(isize_: -42000000isize => "-42000000");
 
@@ -1138,3 +1147,4 @@
                 value!(u64_:   42000000000000u64   => "42000000000000");
-                value!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]value!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(target_pointer_width = "32")]value!(usize_: 42000000usize => "42000000");
 
@@ -1369,3 +1379,4 @@
         serialize_as!(i64_:   -42000000000000i64   => "<root>-42000000000000</root>");
-        serialize_as!(isize_: -42000000000000isize => "<root>-42000000000000</root>");
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(isize_: -42000000000000isize => "<root>-42000000000000</root>");
+        #[cfg(target_pointer_width = "32")]serialize_as!(isize_: -42000000isize => "<root>-42000000</root>");
 
@@ -1375,3 +1386,4 @@
         serialize_as!(u64_:   42000000000000u64   => "<root>42000000000000</root>");
-        serialize_as!(usize_: 42000000000000usize => "<root>42000000000000</root>");
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(usize_: 42000000000000usize => "<root>42000000000000</root>");
+        #[cfg(target_pointer_width = "32")]serialize_as!(usize_: 42000000usize => "<root>42000000</root>");
 
@@ -1474,3 +1486,4 @@
                 text!(i64_:   -42000000000000i64   => "-42000000000000");
-                text!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]text!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(target_pointer_width = "32")]text!(isize_: -42000000isize => "-42000000");
 
@@ -1480,3 +1493,4 @@
                 text!(u64_:   42000000000000u64   => "42000000000000");
-                text!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]text!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(target_pointer_width = "32")]text!(usize_: 42000000usize => "42000000");
 
@@ -1613,3 +1627,4 @@
                 text!(i64_:   -42000000000000i64   => "-42000000000000");
-                text!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]text!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(target_pointer_width = "32")]text!(isize_: -42000000isize => "-42000000");
 
@@ -1619,3 +1634,4 @@
                 text!(u64_:   42000000000000u64   => "42000000000000");
-                text!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]text!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(target_pointer_width = "32")]text!(usize_: 42000000usize => "42000000");
 
@@ -1744,3 +1760,4 @@
                 value!(i64_:   -42000000000000i64   => "-42000000000000");
-                value!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]value!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(target_pointer_width = "32")]value!(isize_: -42000000isize => "-42000000");
 
@@ -1750,3 +1767,4 @@
                 value!(u64_:   42000000000000u64   => "42000000000000");
-                value!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]value!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(target_pointer_width = "32")]value!(usize_: 42000000usize => "42000000");
 
@@ -1861,3 +1879,4 @@
                 value!(i64_:   -42000000000000i64   => "-42000000000000");
-                value!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]value!(isize_: -42000000000000isize => "-42000000000000");
+                #[cfg(target_pointer_width = "32")]value!(isize_: -42000000isize => "-42000000");
 
@@ -1867,3 +1886,4 @@
                 value!(u64_:   42000000000000u64   => "42000000000000");
-                value!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(not(target_pointer_width = "32"))]value!(usize_: 42000000000000usize => "42000000000000");
+                #[cfg(target_pointer_width = "32")]value!(usize_: 42000000usize => "42000000");
 
--- quick-xml.orig/src/se/simple_type.rs
+++ quick-xml/src/se/simple_type.rs
@@ -976,3 +976,4 @@
         serialize_as!(i64_:   -42000000000000i64   => "-42000000000000");
-        serialize_as!(isize_: -42000000000000isize => "-42000000000000");
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(isize_: -42000000000000isize => "-42000000000000");
+        #[cfg(target_pointer_width = "32")]serialize_as!(isize_: -42000000isize => "-42000000");
 
@@ -982,3 +983,4 @@
         serialize_as!(u64_:   42000000000000u64   => "42000000000000");
-        serialize_as!(usize_: 42000000000000usize => "42000000000000");
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(usize_: 42000000000000usize => "42000000000000");
+        #[cfg(target_pointer_width = "32")]serialize_as!(usize_: 42000000usize => "42000000");
 
@@ -1094,3 +1096,4 @@
         serialize_as!(i64_:   -42000000000000i64   => "-42000000000000");
-        serialize_as!(isize_: -42000000000000isize => "-42000000000000");
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(isize_: -42000000isize => "-42000000");
+        #[cfg(target_pointer_width = "32")]serialize_as!(isize_: -42000000isize => "-42000000");
 
@@ -1100,3 +1103,4 @@
         serialize_as!(u64_:   42000000000000u64   => "42000000000000");
-        serialize_as!(usize_: 42000000000000usize => "42000000000000");
+        #[cfg(not(target_pointer_width = "32"))]serialize_as!(usize_: 42000000000000usize => "42000000000000");
+        #[cfg(target_pointer_width = "32")]serialize_as!(usize_: 42000000usize => "42000000");
 
