stage3/constant_folding.cc
changeset 565 8acbddf75333
parent 564 dabffc3086dc
child 566 5688fa07f89a
equal deleted inserted replaced
564:dabffc3086dc 565:8acbddf75333
    42 
    42 
    43 #include "constant_folding.hh"
    43 #include "constant_folding.hh"
    44 #include <typeinfo>
    44 #include <typeinfo>
    45 #include <limits>
    45 #include <limits>
    46 #include <math.h> /* required for pow function */
    46 #include <math.h> /* required for pow function */
       
    47 #include <stdlib.h> /* required for malloc() */
    47 
    48 
    48 #define FIRST_(symbol1, symbol2) (((symbol1)->first_order < (symbol2)->first_order)   ? (symbol1) : (symbol2))
    49 #define FIRST_(symbol1, symbol2) (((symbol1)->first_order < (symbol2)->first_order)   ? (symbol1) : (symbol2))
    49 #define  LAST_(symbol1, symbol2) (((symbol1)->last_order  > (symbol2)->last_order)    ? (symbol1) : (symbol2))
    50 #define  LAST_(symbol1, symbol2) (((symbol1)->last_order  > (symbol2)->last_order)    ? (symbol1) : (symbol2))
    50 
    51 
    51 #define STAGE3_ERROR(error_level, symbol1, symbol2, ...) {                                                                  \
    52 #define STAGE3_ERROR(error_level, symbol1, symbol2, ...) {                                                                  \