Also, this check is incorrect; if a dependent file with no output has changed, you still need to recompile all dependencies.