stage3/visit_expression_type.cc
changeset 386 606443ffd589
parent 367 6d94128ba5ad
child 390 9cf96d45853d
equal deleted inserted replaced
385:450d684013dc 386:606443ffd589
  2074     if (hi2 != NULL) printf("%s", hi2->value);
  2074     if (hi2 != NULL) printf("%s", hi2->value);
  2075     printf("\n");
  2075     printf("\n");
  2076   } // if (debug)
  2076   } // if (debug)
  2077 
  2077 
  2078   if        (NULL == left_type) {
  2078   if        (NULL == left_type) {
  2079     STAGE3_ERROR(symbol->l_exp, symbol->l_exp, "Could not determine data type of expression (undefined variable or strcuture element?).\n");
  2079     STAGE3_ERROR(symbol->l_exp, symbol->l_exp, "Could not determine data type of expression (undefined variable, constant, or structure element?).\n");
  2080   } else if (NULL == right_type) {
  2080   } else if (NULL == right_type) {
  2081     STAGE3_ERROR(symbol->r_exp, symbol->r_exp, "Could not determine data type of expression (undefined variable or strcuture element?).\n");
  2081     STAGE3_ERROR(symbol->r_exp, symbol->r_exp, "Could not determine data type of expression (undefined variable, constant, or structure element?).\n");
  2082   } else if (!is_valid_assignment(left_type, right_type))
  2082   } else if (!is_valid_assignment(left_type, right_type))
  2083     STAGE3_ERROR(symbol, symbol, "data type mismatch in assignment statement!\n");
  2083     STAGE3_ERROR(symbol, symbol, "data type mismatch in assignment statement!\n");
  2084 
  2084 
  2085   return NULL;
  2085   return NULL;
  2086 }
  2086 }