Adding TFs Removes ParNames and ParLimits

Suppose I have two TF1s with set ParNames and ParLimits:

root [0] TF1 f1("f1","[0]+x*[1]")
root [1] f1.SetParNames("par 0 f1", "par 1 f1")
root [2] f1.SetParLimits(0,5,6)
root [3] f1.SetParLimits(1,7,8)
root [4] Double_t l1,l2;
root [5] f1.GetParLimits(0,l1,l2)
root [6] l1
(Double_t)5.00000000000000000e+00
root [7] l2
(Double_t)6.00000000000000000e+00
root [8] TF1 f2("f2","[0]+x*[1]")
root [9] f2.SetParNames("par 0 f2","par 1 f2")

If I add these together in a new TFormula, the ParNames and ParLimits are lost:

root [10] TF1 f3("f3","f1 + f2")
root [11] f3.GetParName(0)
(const char* 0x10318136b)"p0"
root [12] f3.GetParName(1)
(const char* 0x10318136e)"p1"
root [13] f3.GetParName(2)
(const char* 0x103181371)"p2"
root [15] f3.GetParLimits(0,l1,l2)
root [16] l1
(Double_t)0.00000000000000000e+00
root [17] l2
(Double_t)0.00000000000000000e+00

I can sort of understand why the ParNames might not be kept. Perhaps they have to be unique or something, though then it might be nice to have an auto-renaming feature. Something like changing parname -> functionname_parname in the resulting TF1.

The limits however I really don’t understand. I cannot think of any reason not to have them be copied to the corresponding parameters in the summed function. If there is no reason, I suggest that this be fixed to follow the intuitive expectation.