操作
バグ #1921
完了ユーザ定義データ型利用時、C++でコンパイルが通らない
開始日:
2010/12/02
期日:
進捗率:
100%
予定工数:
説明
ユーザ定義データ型利用時、余計なヘッダがインクルードされているためC++でコンパイルが通らない。
例えば、MyDataType.idl 内でAAAモジュール内にMyDataTypeデータ型を定義し、設定にて当該IDLを読み込むように設定し、C++のコードを設定すると、デフォルトインクルードディレクティブの下に
#include <rtm/idl/AAA.h>
というヘッダインクルードディレクティブが追加されるためコンパイルエラーとなる。
n-ando さんがほぼ14年前に更新
- ステータス を 新規 から 終了 に変更
- 進捗率 を 0 から 100 に変更
坂本さんによると、旧バージョンのテンプレートの消し忘れらしく、
CXX_RTC_Header_src.template
${sharp}include <rtm/Manager.h>
${sharp}include <rtm/${rtcParam.componentKind}Base.h>
${sharp}include <rtm/CorbaPort.h>
${sharp}include <rtm/DataInPort.h>
${sharp}include <rtm/DataOutPort.h>
${sharp}include <rtm/idl/BasicDataTypeSkel.h>
${sharp}include <rtm/idl/ExtendedDataTypesSkel.h>
${sharp}include <rtm/idl/InterfaceDataTypesSkel.h>
#foreach($type in ${cXXConv.getPortModules(${rtcParam})})
${cXXConv.getDataportIncludeName(${type})}
#end
の最後の3行を削除しても副作用などもなく問題ないそうなので削除。
操作