DPCT1055

メッセージ

サイズ 1 のベクトル型は、対応する基本型に移行され、継承することはできません。コードを書き換える必要があります。

説明

この警告メッセージは、オリジナルコードでサイズ 1 のベクトル型がクラスや構造体に継承されていると出力されます。サイズ 1 のベクトル型は DPC++ の対応する基本型に移行されており、基本型は継承できないので、コードを書き換える必要があります。

修正方法の提案

クラス/構造体で、対応する基本型 (例えば、int1 の場合は int) を持つ新しいフィールドを宣言し、必要な演算子をオーバーライドできます。

例えば、以下の移行した DPC++ コードについて考えてみます。

1
2
3
class MyClass : int {
  ...
}

このコードを以下のように手動で調整します。

1
2
3
4
5
class MyClass {
  int x;
  MyClass operator+(const MyClass& y) { ... }
  MyClass operator=(const MyClass& y){...}...
}