On 08/16/2018 02:54 PM, Florian Rommel wrote: > Hi Martin, > > >> That can definitely done better, if I see correctly only reference from >> sem_item, sem_function and sem_variable >> is in sem_item::add_type. That can be removed. > > Yes, only sem_item::add_type uses this variable. Do you think the whole > static optimizer variable should be removed? > > >> Sure, that's strange. But I can't find the reference in current trunk. >> >> Can you please update to trunk and check the remaining problematic >> references? > > Okay, I got the current trunk and I believe that this is still existent. > The problem is that the function `sem_item_optimizer::parse_funcs_and_vars` > calls `sem_function::parse` which calls `sem_function::init` which calls > `sem_function::hash_stmt` which calls `sem_item::add_type` (a static member > function) which finally uses the static `optimizer` variable. > In short: `sem_item_optimizer::parse_funcs_and_vars` finally calls > `sem_item::add_type` > I retraced this in the source code and with gdb – this is not the simplest > code so I hope I got everything right. > However, this is not a separate issue from the one above.
Hello. Good, got it, thanks for clarification. I'm going to prepare a patch this week. Martin > > > Regards > > Flo >