CS8178は、C#のコンパイル時エラーの一つで、返り値を参照渡しするメソッドの呼び出し式内で非同期処理用のawaitを使用した場合に発生します。 エラーが発生する理由は、参照渡しの戻り値と非同期処理の組み合わせが適切に同期されないためです
続きを読む »コンパイラ エラー CS8210は、タプルにvoid型の値を含めようとした際に発生します。 例えば、var x = ("something", Method());と記述すると、Method()は戻り値がないためタプル内に無効な要素が生じ、
続きを読む »コンパイラエラー CS8333 は、読み取り専用変数に対して書き込み可能な参照を返そうとする際に発生します。 C#では、in修飾子で渡された変数は変更できないため、返却する場合はref readonlyを利用する必要があります。 正しい参照
続きを読む »C#のコンパイラエラー CS8334 は、読み取り専用の変数に対して書き込み可能な参照を返そうとする際に発生します。 例えば、ref int を返すメソッドで読み取り専用の引数から参照を返すとエラーとなるため、修正には参照の修飾子を ref
続きを読む »CS8352 は、C# のコンパイル時エラーで、stackalloc などによりスタック上に確保したメモリの参照が、元のスコープ外で使用される場合に発生します。 削除済みのスタック領域にアクセスするリスクがあるため、ヒープへの割り当てなどを
続きを読む »CS8354 は C# のコンパイラ エラーで、メソッド内で ref 戻り値として this を返すと発生します。 ref 引数は代入可能な変数や配列要素でなければならず、this はその要件を満たさないためエラーとなります。 コード実装時
続きを読む »CS8355はC#のコンパイラエラーで、inパラメーターに[Out]属性を指定した際に発生します。 inパラメーターは読み取り専用として宣言されるため、ネイティブコードとの相互運用時に書き込みが必要な[Out]属性と矛盾してしまいます。 そ
続きを読む »CS8403エラーは、非同期反復子ブロックを含むメソッドにasync修飾子が付けられていない場合に発生します。 非同期ストリームを返すときは、メソッドにasyncを追加し、返り値をIAsyncEnumerableまたはIAsyncEnume
続きを読む »CS8410は、C#で非同期usingステートメントを使用する際に発生するエラーです。 対象の型がSystem.IAsyncDisposableに暗黙的に変換されるか、DisposeAsyncメソッドを実装していない場合に起こります。 エラ
続きを読む »コンパイラエラー CS8411 は C# の非同期 foreach文を使用するときに発生します。 対象の型に必要な GetAsyncEnumeratorメソッドが実装されていない場合に起こるため、IAsyncEnumerable<T&
続きを読む »CS8422エラーは、静的なローカル関数内で this や base を参照した場合に発生します。 静的ローカル関数は親クラスのインスタンスメンバーにアクセスできないため、エラーが表示されます。 解決するには、ローカル関数を静的に宣言せず、
続きを読む »CS8515は、C#のswitch文で制御式が正しく括弧で囲まれていない場合に発生するコンパイルエラーです。 switchの後には括弧に制御式を記述し、中かっこで囲んだブロック内にcase節を書く必要があります。 適切な構文に修正することで
続きを読む »CS8795エラーは、アクセス修飾子付きのpartialメンバーに実装部分が必要な場合に発生します。 partialな宣言だけではなく、実際の処理内容を記述する実装宣言を追加することで、コンパイルエラーを解消できます。 CS8795エラーの
続きを読む »CS8803 エラーは、C#のコード内で最上位レベルのステートメントが型や名前空間の宣言の前に記述されていない場合に発生します。 エラーメッセージが表示された際は、ファイル内のコード順序を見直し、トップレベルのステートメントを宣言より先に配
続きを読む »CS8812は、C#でメソッドのアドレスを取得する際、関数ポインター型以外へ直接代入しようとすると発生するコンパイラエラーです。 例えば、&Methodで取得したアドレスは型がないため、そのままでは変換できません。 解決するには、d
続きを読む »CS8817 は、partialメソッドの定義と実装の両方で、戻り値型が一致していない場合に発生する C# のコンパイルエラーです。 両方の宣言で同一の戻り値型を指定することでエラーの解消が可能です。 エラー概要 CS8817 エラーの基本
続きを読む »コンパイラエラー CS9043は、ref返却プロパティにrequired修飾子を指定した際に発生します。 オブジェクト初期化時にメンバー設定が求められますが、ref返却プロパティにはsetterが存在しないため、この組み合わせは使用できませ
続きを読む »CS9050エラーは、C#でrefフィールドがref struct型を参照しようとする場合に発生します。 C#の参照安全性ルールにより、refフィールドはref struct型内でのみ正しく利用できるため、エラーが表示されたらコードの型宣言
続きを読む »c言語でOpenMPを使用する際、コンパイラ警告C4938が出る場合があります。 これは浮動小数点の加算処理において、/fp:strictや#pragma fenv_accessを使用すると並列処理で計算順序が変わり、結果が異なる可能性があ
続きを読む »