I had troubles concerning the order of console output, esp. in combination with ModelSim/Questasim.
Problem Description:
Assume the following proc in VendorScript_Mentor.tcl (pseudocode):
proc analyze {FileName} {
puts Starting VCOM
vcom ... $FileName
puts VCOM Done
}
I got the following output:
Starting VCOM
VCOM Done
…
<actual output from vcom>
So there seems to be a problem concerning output buffering or something similar. The actual output from the vcom command is displayed AFTER the command has long finished and the tcl script has already proceeded.
I narrowed it down to the usage of puts (built-in tcl command to write to console) vs. echo (ModelSim/QuestaSim specific command that writes to transcript and console). It seems those two have “race conditions”.