Very old question but very simple response so i answer ...
Syntaxcheck is a run mode (just like analysis, datacheck & continue).
Using Syntaxcheck will verify your syntax and generate a .dat without doing memory estimations. It will not get license tokens (if so, contact your reseller to report the bug)
Using Datacheck will verify syntax and do the memory estimations (MINIMUM MEM, MEM TO MINIMIZE IO). License tokens are needed.
Using Analysis will run a complete analysis.
Using continue will allow you to run an anlysis job from a previous datacheck.