properly handle sub-blocks
recognize positive_infinity
fix handling of real-number constants