@JohannesPfeifer at the moment the only variable names we restrict are those constructed by the preprocessor as auxiliary variables. Why do you need to restrict ME as an exogenous variable?
Because internally, I will use the string ME to denote sum of all measurement errors in the variance decomposition (think of blocking it like blocking Sigma_e)
@JohannesPfeifer that sounds good to me. It's not that it's a difficult thing to do on the preprocessing side (it's quite easy), it just seems to me that the way you suggest, using a random variable name until you find one that's not an exogenous variable, is more user friendly.
@houtanb I had another look at the issue and think we should block the name ME in the preprocessor. The reason is that we would save the contribution of the measurement error in a field like oo_.PosteriorTheoreticalMoments.dsge.ConditionalVarianceDecompositionME.y.ME. Here, we need to make sure that the ME field is not already taken. Using a random name in the code would not solve the problem.