Utility function reference -> __relationalOpGT

A place for discussing all aspects of T-VEC subsystem compilation, vector generation, and model coverage analysis.

Utility function reference -> __relationalOpGT

Postby jyoung » Tue Jun 23, 2009 12:10 pm

I need some help debugging this error. I cannot figure out where this is coming from. Do you have any experience with this type of error and can help point me in the right direction.

I'm using a S-Function translation in my model if that helps.

Thanks






Compiling Subsystem : CNC_CMRCSCntrlLaws_CSU_root...
ERROR : CF0039 :
Utility function reference -> __relationalOpGT
has one or more extra formal parameters in its parameter list
starting with parameter -> pin2
than does the actual parameter list in the reference to the
utility made within -> RP480
at ss file location -> ./specifications\CNC_CMRCSCntrlLaws_CSU_root.SS(285227,87)


ERROR : CF0039 :
Utility function reference -> __relationalOpGT
has one or more extra formal parameters in its parameter list
starting with parameter -> pin2
than does the actual parameter list in the reference to the
utility made within -> RP480
at ss file location -> ./specifications\CNC_CMRCSCntrlLaws_CSU_root.SS(285235,87)
jyoung
 
Posts: 33
Joined: Wed Mar 18, 2009 2:25 pm

Re: Utility function reference -> __relationalOpGT

Postby busser » Tue Jun 23, 2009 4:44 pm

I would have to see your specific case to know for certain. It would help if you were to send me the translation .log file so that I could examine the errors and warnings that are most likely being generated during the translation process.

But let me provide you with some additional information.

The reference to __relationalOpGT is a reference to the T-VEC VGS utility subsystem by that name which implements the semantics of the Simulink "GreaterThan" relational operator block. The Simulink blocks like >, <, ==, !=, etc are not like these symbols in T-VEC VGS .SS file form. These blocks produce boolean signals that can flow anywhere else in the model. In T-VEC VGS, these operators simply evaluate to TRUE or FALSE and if FALSE, vector generation stops, backtracks to the next higher-level disjunctive case, or fails vector generation altogether if there are no higher level disjunctions. Consequently, the Simulink translator converts references to Simulink relational operator blocks into T-VEC subsystems with identifiable names and it is within the environment of the T_VEC VGS subsystem that the relationship is evaluated and turned into a TRUE or FALSE boolean signal.

The error message

Utility function reference -> __relationalOpGT
has one or more extra formal parameters in its parameter list
starting with parameter -> pin2
than does the actual parameter list in the reference to the
utility made within -> RP480
at ss file location -> ./specifications\CNC_CMRCSCntrlLaws_CSU_root.SS(285227,87)


means that the translator did not produce one of the inputs that were supposed be supplied to the actual parameter list in the __relationalOpGT() subsystem reference that exists at file location

./specifications\CNC_CMRCSCntrlLaws_CSU_root.SS(285227,87)

I would venture a guess that your model is configured to inline a rather large set of Simulink subsystems. This is because this T-VEC VGS .SS file looks to be more than 285,000 lines long. We highly recommend that you structure your SImulink/Stateflow subsystem hierarchy into Atomic Function subsystems, rather than large inlined single function blocks. It is very difficult to do any testing, automated or manual, when the code for the model is not decomposed into manageable partitions.

Please send me your <modelName>.log file so that I can get a better idea what the cause of this might be.
busser
Site Admin
 
Posts: 52
Joined: Thu Mar 13, 2008 7:42 pm


Return to Vector Generation

Who is online

Users browsing this forum: No registered users and 0 guests

cron