Hi,
the error indicates that, in the scope of your new instance, S_NO is unknown to the compiler.
I assume you have:
1) deleted the S_NO component from the Components vector
2) taken care of all state and interface variables that may use S_NO
And this is all correct, of course.
Now, the only way it would complain about a missing definition (of the OBJ S_NO) for your new instance is that some models are available for the new instance too, without being properly 'protected'.
I can foresee 3 situations:
1) A model is valid only for certain instances, i.e. wrapped within #ifdef explicitly enumerating the instances
Such model can perfectly use S_NO, but will not be available for your instance.
So, no problem here!
2) A model is valid for all 'standard' instances, i.e. wrapped within #ifdef StandardCategoryModels; and contains individual sections for each Instance, e.g. #if (defined ASM1Temp), #if (defined ASM2ModTemp), etc.
Your instance check will fail, because that particular model will be missing the section to be used for your instance.
But the error message will be different ...
3) A model is valid for all 'standard' instances, i.e. wrapped within #ifdef StandardCategoryModels (as for 2); but does not contain individual sections for each Instance.
It may very well be that it uses S_NO that is not defined for your instance.
I believe this will yield the error message you report.