置き換えるデータタイプ名に対してdoubleやint等のC言語の予約語を指定することはできません。
使用できない予約語(予約キーワード)に関しては、次の URL にまとまっています。
[予約キーワード]
Embedded Coder独自のデータタイプからC言語の予約語に変更したい場合は、コード生成後にCコードの編集を行う必要があります。
回答上部に添付されているサンプル
・changeint16.slx
・ert_make_rtw_hook.m
・rtw2c.m
では、ユーザ独自の処理を実行するためのert_make_rtw_hook.mを使用し、コード生成後に文字列を置換する処理を行っています。
ert_make_rtw_hook.mは下記フォルダに保存されています。
※ matlabrootは MATLABのインストールディレクトリを表します。
matlabroot/toolbox/coder/embeddedcoder
コード生成を行うと、changeint16.cとchangeint16.hのint16_Tがshortに置換されます。
ert_make_rtw_hook.mは、101行目のafter_tlcがコード生成後に呼ばれる処理を記述する部分となりますので、ここでrtw2c.mを呼び出しています。
rtw2c.mでは、ファイルの別名保存や文字列の置換処理を行っています。
本件に関するヘルプドキュメントは、下記URLよりご覧下さい。
● Simulink Coderヘルプドキュメント:STF_make_rtw_hook ファイルによるビルド プロセスのカスタマイズ