Stateflow ソフトウェア機能のサポートの制限事項
Simulink® Design Verifier™ では Stateflow® ソフトウェアの以下の機能はサポートされません。解析するモデルでは、サポートされない機能の使用は避けてください。
ml 名前空間演算子、ml 関数、ml 式
MATLAB® 関数の呼び出しまたは MATLAB ワークスペース変数へのアクセスは Stateflow ソフトウェアでは可能ですが、このソフトウェアではサポートされていません C チャート内の MATLAB 関数およびワークスペース データへのアクセス (Stateflow)を参照してください。
C または C++ の演算子
このソフトウェアは、Stateflow ソフトウェアが許可している、カスタム コードの sizeof 演算子をサポートしています。
C の数学関数
以下の C の数学関数の呼び出しがサポートされています。
absceilfabsfloorfmodlabsldexppow(整数の指数のみ)
その他の C の数学関数は Stateflow ソフトウェアでは呼び出せますが、このソフトウェアではサポートされていません。自動スタブが有効な場合 (既定の設定)、解析時にこれらのサポートされない関数は削除されます。
Stateflow における C の数学関数の詳細については、C チャートでの C ライブラリ関数の呼び出し (Stateflow)を参照してください。
メモ
自動スタブについての詳細は、自動スタブによる非互換性処理 (Simulink Design Verifier)を参照してください。
サブチャート外でエクスポートされたグラフィカル関数を呼び出す Atomic サブチャート
テスト生成解析では、このソフトウェアはグラフィカル関数を呼び出す Atomic サブチャートをサポートしますが、他の依存関係がある場合は Atomic サブチャートの抽出と解析はサポートしません。
メモ
エクスポートされた関数の詳細については、再利用のための Stateflow 関数のエクスポート (Stateflow)を参照してください。
Atomic サブチャートの入出力マッピング
Atomic サブチャートの入出力が異なるスコープのチャートレベルのデータにマッピングされている場合、その Atomic サブチャートが含まれるチャートはサポートされません。
Atomic サブチャートの入力については、入力が出力スコープ、ローカル スコープまたはパラメーター スコープのチャートレベルのデータにマッピングされる場合に、この非互換性が適用されます。Atomic サブチャートの出力については、出力がローカル スコープのチャートレベルのデータにマッピングされる場合に、この非互換性が適用されます。
再帰および巡回的な動作
再帰関数はサポートされません。この関数は、関数が自分自身を直接的、あるいは他の関数呼び出しから間接的に呼び出す際に生起します。Stateflow ソフトウェアでは、グラフィカル関数を使用して再帰の実装が可能です。
また、Stateflow ソフトウェアではイベント ブロードキャストと関数呼び出しの組み合わせを使用して再帰を実装できますが、このソフトウェアではサポートされません。
メモ
Stateflow チャートでの再帰の回避の詳細については、チャートでの望ましくない再帰の回避 (Stateflow)を参照してください。
Stateflow ソフトウェアでは、"巡回的な動作" を生成できます。ここでは、ステップのシーケンスは無限に繰り返されます。巡回的な動作を含むチャートがモデルにある場合、このソフトウェアはそれを解析できません。
メモ
Stateflow チャートでの循環動作の詳細については、循環動作の検出 (Stateflow)を参照してください。
ただし、次の例のように、巡回的な動作を含むチャートを変更して互換性をもたせることができます。
以下のチャートは巡回的な動作を生成します。状態 A は状態 A1 を呼び出します。これにより、Clear イベントが状態 B にブロードキャストされ、状態 B2 を呼び出します。これにより、また Set イベントが状態 A にブロードキャストされることで、巡回的な動作が発生します。

関数 send の呼び出しを変更して Set および Clear イベントがそれぞれ状態 B1 および A1 に直接ブロードキャストされるように直接イベント ブロードキャストを使用する場合、巡回的な動作は消え、モデルを解析できます。

メモ
直接イベント ブロードキャストの利点の詳細については、ローカル イベントをブロードキャストしてパラレル ステートを同期 (Stateflow)を参照してください。
カスタム C/C++ コード
モデルがカスタム C/C++ コードから構成されている場合、Simulink Design Verifier は、次の設定に基づいて解析をサポートします。
カスタム コード解析オプションが有効な場合: モデルは解析に対して互換性があります。
カスタム コードのインポート オプションとカスタム コード解析オプションが有効な場合: カスタム コードのインポート オプションが
Offに設定されている場合、カスタム コードはサポートされず、モデルは解析に対して互換性がありません。詳細については、カスタム コードのインポートおよびカスタム コード解析を有効にするを参照してください。カスタム コードのインポート オプションが有効でカスタム コード解析オプションが
Offに設定されている場合: モデルは解析に対して互換性がありますが、カスタム コードの呼び出しは解析中にスタブされます。
リテラル文字列引数をもつテキスト形式の関数
Stateflow チャート内の、テキスト形式の関数へのリテラル文字列引数はサポートされていません。
端子を含む Stateflow チャート
entry 端子または exit 端子が含まれている Stateflow チャートでは、エクスポート関数およびサブシステムのビルドはサポートされていません。