Bladeren bron

flex version issues

David Rose 16 jaren geleden
bovenliggende
commit
786124f898
2 gewijzigde bestanden met toevoegingen van 16 en 2 verwijderingen
  1. 8 1
      pandatool/src/vrml/vrmlLexer.lxx
  2. 8 1
      pandatool/src/xfile/xLexer.lxx

+ 8 - 1
pandatool/src/vrml/vrmlLexer.lxx

@@ -154,7 +154,14 @@ input_chars(char *buffer, int &result, int max_size) {
   }
   }
 }
 }
 #undef YY_INPUT
 #undef YY_INPUT
-#define YY_INPUT(buffer, result, max_size) input_chars(buffer, result, max_size)
+
+// Define this macro carefully, since different flex versions call it
+// with a different type for result.
+#define YY_INPUT(buffer, result, max_size) { \
+  int int_result; \
+  input_chars((buffer), int_result, (max_size)); \
+  (result) = int_result; \
+}
 
 
 int extract_int() {
 int extract_int() {
   return strtol(yytext, NULL, 0);
   return strtol(yytext, NULL, 0);

+ 8 - 1
pandatool/src/xfile/xLexer.lxx

@@ -147,7 +147,14 @@ input_chars(char *buffer, int &result, int max_size) {
   }
   }
 }
 }
 #undef YY_INPUT
 #undef YY_INPUT
-#define YY_INPUT(buffer, result, max_size) input_chars(buffer, result, max_size)
+
+// Define this macro carefully, since different flex versions call it
+// with a different type for result.
+#define YY_INPUT(buffer, result, max_size) { \
+  int int_result; \
+  input_chars((buffer), int_result, (max_size)); \
+  (result) = int_result; \
+}
 
 
 // read_char reads and returns a single character, incrementing the
 // read_char reads and returns a single character, incrementing the
 // supplied line and column numbers as appropriate.  A convenience
 // supplied line and column numbers as appropriate.  A convenience