MATLAB: Are atomic subsystems that have reusable function packaging not made reusable when used within enabled subsystems

Embedded Coderenabled subsystemfunction packagingsimulink

I have a library block that is set to be atomic, and to have reusable function packaging. The library blocks are set to have user-specified function names and file names (so that all library utilties end up in the same file).
This library block is then used in 2 places with my model, one of the uses is within an enabled subsystem. When I generate code for this model, the library block is implemented as 2 identical functions but with different names. The associated structures for the storage of signals and such are also exactly the same, but with different names. This results in my library utlitity C & H file being somewhat cluttered wtih unnecessary duplicates.
I don't think there's anything functionally incorrect with this, I just wonder why the 2 instances of the library cannot share the same function as I have specified. The library blcok should be acting the same whether or not it's in an enabled subsystem, right?

Best Answer

I realized I incorrectly said the 2 different functions were identical: there is actually an extra line that deals with the initial values for the output of the enabled subsystem. Using a proper differencing tool made this clear (I really should have done this from the outset).
That answers my question about why there are different versions.