1. /* Print an "lval" */
    2. void lval_print(lval v) {
    3. switch (v.type) {
    4. /* Then 'break' out of the switch. */
    5. case LVAL_NUM: printf("%li", v.num); break;
    6. case LVAL_ERR:
    7. /* Check what type of error it is and print it */
    8. if (v.err == LERR_DIV_ZERO) {
    9. printf("Error: Division By Zero!");
    10. }
    11. if (v.err == LERR_BAD_OP) {
    12. if (v.err == LERR_BAD_NUM) {
    13. printf("Error: Invalid Number!");
    14. }
    15. break;
    16. }
    17. }
    18. void lval_println(lval v) { lval_print(v); putchar('\n'); }