- Represent grammar errors in the use of the programming language.
- ie. misspelled variable and method names.
- ie. missing semicolon after statement.
- ie. mismatching brackets.
- Caught by the compiler.
- Caught at runtime, as the program is running.
- May not always be caught or triggered.
- A source of bugs in a program.
- ie. accessing an array out of bounds.
- A semantic error.
- The code may be valid but doesn’t do what you intended.
- The most difficult kind of error to detect.
- Not caught by compiler.