The following can create a compile error.
Too many ends - there should be one for every case, for to do, and begin.
Too many semicolons - there should be one on every line unless it is a case, for to do, repeat, procedure, end (unless it is in the mainloop, then it needs a period) and 'program' which should be on the top.
A lack of or too many untils - there should be one for every repeat.
Incorrectly using GoTo or labels.
Not declaring variables or constants correctly.
Having too many 'program's in a script.
Not using a function or procedure correctly.
Active only during the Summer...