Sharing columns of the DM across types of parameters has been a continual source of questions. Another way the question has been asked is "How do I constrain p=c in closed models?"
I added section 6.9 of the new workshop notes to address this question. However, in constructing that example and teaching the workshop I discovered an issue that I had not considered. Numeric design data fields like Time, Age and Cohort are created such that the origin (first value) starts at 0 and that is done independently for each parameter type. Since p is initial capture probability it starts at the first occasion and c is the recapture probability so it starts at the second occasion. Thus, the Time value constructed by make.design.data is not consistent across p and c. If you use a model
p.c.Time=list(formula=~Time,share=TRUE)
or
p.c.Time=list(formula=~Time+c,share=TRUE)
or some variant of that, the model is not correct because Time=0 for p is occasion 1 and Time=0 for c is occasion 2. The fix is easy. After creating the default design data with make.design.data into ddl, do the following:
ddl$c$Time=ddl$c$Time+1
If the model was such that the slope and intercept were separate for c and p, then it is not a concern. This could be a concern for any set of parameters that are shared, so make sure the default design data are consistent across parameters that you share.
regards--jeff