コンパイラ警告 C0298
メッセージ: '<再帰メソッド名' から始まる再帰呼び出しのため、スタック使用量の計算が完了しませんでした。
考えられる原因: スタック使用量を判別できないため、再帰呼び出しのあるメソッドではスタック チェックを正常に実行できません。
エラー訂正: 使用 estimated-stack-usage
メソッドにスタック サイズ要件の推定値 (バイト単位) を与える属性。
例 464. エラーの例:
METHOD PUBLIC m_Recursive : UDINT VAR_INPUT uiN : UINT; END_VAR VAR END_VAR m_Recursive := 1; IF uiN > 1 THEN m_Recursive := uiN * THIS^.m_Recursive(uiN := (uiN - 1) ); RETURN; ELSE RETURN; END_IF;
メッセージ:
C0298: 'm_Recursive' から始まる再帰呼び出しのため、スタック使用量の計算が不完全です
エラー訂正:
{attribute 'estimated-stack-usage' := '99'}
詳細については、以下を参照してください。 estimated-stack-usage