0
typedef struct {
long long int mem_0;
} Tuple1;
typedef struct {
int tag;
union {
struct Tuple1 Union0Case0;
} data;
} Union0;
C:/Users/Marko/Documents/Visual Studio 2015/Projects/Multi-armed Bandit Experiments/SpiralExample/bin/Release/cuda_kernels.cu(10): error: incomplete type is not allowedtypedefed構造体がNVCCでコンパイルできないのはなぜですか?
上記はGCC 5.3.0コンパイラで実際にコンパイルされます。私はこれにそれを変更すると、それが動作します:
struct Tuple1 {
long long int mem_0;
};
struct Union0 {
int tag;
union {
struct Tuple1 Union0Case0;
} data;
};
エラーは完全に私にとって妥当と思われます。あなたは組合の中で 'Tuple1 Union0Case0'を望みます。あなたは 'Tuple1'という名前の構造体を宣言していませんでした – talonmies
私はしませんでしたか?それで最初のtypedefは何であるはずですか? –
名前のない* structです(キーワードは 'struct'の後にはありません)。 – njuffa