Question

My problem is specific to SIMULINK, Model and Code Generation Advisor, and Embedded Coder

I used referenced models in a bigger model (i.e. integrated system) and my referenced model has similar or identically-named signals. When I was using model and code generation advisors for checking sanity of my models, the following error came up under "Identify questionable settings for strict single-precision operations"

{code}Error occurred during model compile.

Potential usage conflicts for identifier 'MdlrefDW_Other_Systems_Inputs_T'. This might occur when multiple referenced models have similar model names and similar naming rules. You can resolve this conflict by: increase the maximum identifier length parameter on the Symbols pane of the Configuration Parameter dialog, add different literal strings in identifier naming rules for each referenced model, or use dis-similar names for each referenced model

Potential usage conflicts for identifier 'MdlrefDW_Other_Systems_Inputs_T'. This might occur when multiple referenced models have similar model names and similar naming rules. You can resolve this conflict by: increase the maximum identifier length parameter on the Symbols pane of the Configuration Parameter dialog, add different literal strings in identifier naming rules for each referenced model, or use dis-similar names for each referenced model

Potential usage conflicts for identifier 'MdlrefDW_Other_Systems_Inputs_T'. This might occur when multiple referenced models have similar model names and similar naming rules. You can resolve this conflict by: increase the maximum identifier length parameter on the Symbols pane of the Configuration Parameter dialog, add different literal strings in identifier naming rules for each referenced model, or use dis-similar names for each referenced model{code}

I even tried to remove any signal names and use non-virtual data buses to group signals so that they are translated as a structure in C code (when generated). However, it still complains about the same thing.

The other thing I tried is to manipulate name mangling. but then it conflicts with the MISRA C code safety requirements (minimum mangling character and maximum identifier/var length).

What i am struggling to understand if this problem is a limitation of SIMULINK or can be fixed. I cannot simply go and change my signal names because that is blindly adapting to SIMULINK, but not investigating the core reason. Also, I think model is functionally correct. Has anyone experienced something like this?

FOr reference, I think using data bus has got nothing to do with this. I simply tried this approach because someone suggested.

Was it helpful?

Solution

The problem seems to have gone away once I have changed the length of the maximum allowable characters for identifier names. But I HAD TO CHANGE IT IN ALL MODELS!!!!!

It can be done from the Symbols pane from the Code Generation Menu of the Model Configuration Parameters.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top