Execution error and compilation error:
Errors like as mismatch of data types or array out of bound error are called as execution errors or runtime errors. These errors are usually go undetected by the compiler so programs with run-time error will run but make erroneous results.
Compilation error also called as syntax errors are caused by violation of the grammar rules of the language. The compiler detects, isolate these errors and terminate the source program after listing the errors.