  #undef AFL_LINNUM
 diff -ur idasdk-versions/5.3/include/pro.h swigsdk-versions/5.3/include/pro.h
 --- idasdk-versions/5.3/include/pro.h	2008-07-03 23:38:00.000000000 +0300
-+++ swigsdk-versions/5.3/include/pro.h	2008-09-30 21:20:49.000000000 +0300
++++ swigsdk-versions/5.3/include/pro.h	2008-10-04 15:14:41.000000000 +0300
 @@ -64,6 +64,7 @@
  #define __EA64__
  #endif

 //      Utility functions
diff -ur idasdk-versions/5.3/include/expr.hpp swigsdk-versions/5.3/include/expr.hpp
--- idasdk-versions/5.3/include/expr.hpp	2008-07-03 16:28:00.000000000 +0300
+++ swigsdk-versions/5.3/include/expr.hpp	2008-09-30 19:30:22.000000000 +0300
@@ -67,12 +67,14 @@
                                 // number of arguments. The actual number of
                                 // arguments will be passed in 'num'
 
+#ifndef SWIG
   union
   {
     char *str;                  // VT_STR
     sval_t num;                 // VT_LONG
     ushort e[6];                // VT_FLOAT
   };
+#endif // SWIG
 

   void unhide_if_necessary(ea_t ea);
   void hide_if_necessary(void);
 protected:
@@ -117,7 +124,9 @@
 class location_t : public curloc
 {
   typedef curloc inherited;
