AR# 45468

PlanAhead - 削除されたポートへのポインターに LOC プロパティを設定しようとすると例外エラーが発生する

説明

次の例と同じように set_property LOC コマンドを使用して Tcl スクリプトを実行すると、例外エラーが発生して PlanAhead ツールがクラッシュします。

例 :

set my_port [get_ports we] 
set _we_loc [get_property LOC $my_port]
set_property LOC "" $my_port
delete_port $my_port
set_property LOC AB17 $my_port

"An unexpected error has occurred (11)
Stack:
.../ISE_DS/PlanAhead/tps/lnx64/jre/lib/amd64/server/libjvm.so [0x2b44b3a6393d]
.../ISE_DS/PlanAhead/tps/lnx64/jre/lib/amd64/server/libjvm.so [0x2b44b3a60e9b]
.../ISE_DS/PlanAhead/tps/lnx64/jre/lib/amd64/server/libjvm.so(JVM_handle_linux_signal+0x170) [0x2b44b3a643e0]
.../ISE_DS/PlanAhead/tps/lnx64/jre/lib/amd64/server/libjvm.so [0x2b44b3a60dae]
/lib64/libpthread.so.0 [0x32d560eb10]"

ソリューション

この問題が発生するのは、delete_port $my_port 文を使用してポートが削除されても、ポインター $my_port で古いデータが保持されるためです。 

その後の $my_port の参照が原因で、ソフトウェアがクラッシュします。

この問題を修正するには、set my_port [get_ports we] を再度呼び出して $my_port をリセットします。

AR# 45468
日付 08/11/2014
ステータス アクティブ
種類 既知の問題
ツール