The LaTeX code you show produces no page, so no PDF file is written. The PDF viewer can't find it, because it doesn't exist.
It is no error on the LaTeX side; if the front-end is not able to manage the situation, it's a problem of the front-end.
pdflatex teal && echo $?
teal.tex is your example file, the terminal reports
This is pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013)
restricted \write18 enabled.
entering extended mode
Babel <3.9h> and hyphenation patterns for 78 languages loaded.
Document Class: report 2007/10/19 v1.4h Standard LaTeX document class
No pages of output.
Transcript written on teal.log.
so it's evident that the exit code is 0 (no error).
A program such as
rubber (which has been unmantained for several years) or
latexmk will signal you a non zero exit code, because they expect some output and assume that a missing PDF file is due to some error. This is wrong, in my opinion, because they could examine the exit code of the
pdflatex process (which is only 0 or 1, by the way).
In this case
latexmk exits with code 12, but, again, this is not a TeX/LaTeX error. And I don't think there's a workaround, other than making a feature request/bug report to the developers. You'll probably be unlucky with