I meant foreach_in_collection aClk $clk_lst { set_false_path -from $aClk -to [remove_from_collection $clk_lst $aClk] } Aditya Ramachandran wrote: > cant you do this: > > foreach aClk $clk_lst { > set_false_path -from $aClk -to [remove_from_collection > $clk_lst $aClk] > } > > Aditya > stefimke wrote: > > I'm fighting with variable substitution in Synopsys DC-shell in tcl/xg > > mode. > > > > This is what I want to do: > > > > #----------------------------------------------------------------------------- > > # Setting FALSE paths for asynchronous interfacing between clock > > domains > > #----------------------------------------------------------------------------- > > foreach_in_collection clk1 ${clk_lst} { > > foreach_in_collection clk2 ${clk_lst} { > > if { ${clk1} != ${clk2} } { > > echo "Information: Setting false path from ${clk1} to ${clk2}" > > query_objects ${clk1} > > query_objects ${clk2} > > set_false_path -from ${clk1} -to ${clk2} > > } > > } > > } > > > > > > This an output that is printed: > > > > Information: Setting false path from _sel54 to _sel55 > > {abc_clk} > > {abc_clk} > > > > Completely wrong... I don't want to define false paths from flipflops > > in the same clock domain. > > So the "if" is already going wrong.... does it compare the "_sel54" > > with the "_sel55" string? > > > > Anybody?