I run Synthesis on any design (including the Vivado example designs) and after Synthesis completes, the project status is showing that Synthesis failed.
There is no error indicated in the log file.
The status of the project flow is controlled by *.rst files created in the runs directories.
If the synthesis sub-call returns a non-zero value, cscript will generate a vivado.error.rst file (.\project_1.runs\synth_1\.vivado.error.rst) according to the .js script generated by Vivado to run the subprocess.
If there are no errors in the synthesis process, it is possible that the system tools used to execute the process have an error and are returning the non-zero value without affecting the Synthesis process itself.
An example of this has been seen when the registry entry HKEY_CLASSES_ROOT/HKEY_CURRENT_USER/Software/Microsoft/Command Processor has an entry named AutoRun with a value that is invalid. Any time the cmd.exe command is launched (for example, during a synthesis run) the system attempts to also run this invalid AutoRun command.
Even though synthesis continues and completes successfully, due to the failed AutoRun, a non-zero value is returned to cscritpt and the vivado.error.rst file is created.