On 2012-12-12 22:00, Jacob Carlborg wrote:
It seems it's not possible to call ModuleInfo.unitTest more than once.The following code will not run the unit tests: foreach (m ; ModuleInfo) if (m && m.unitTest) m.unitTest(); But this code will: foreach (m ; ModuleInfo) if (m) if (auto fp = m.unitTest) fp(); Not that I'm storing the result of "m.unitTest" in a variable in the second example. Am I doing something wrong here or is this a bug?
I see what I did wrong. ModuleInfo.unitTest is a method these days, instead of a field like before. Due two how properties work in D it will only call the "unitTest" method and not the returned function pointer.
-- /Jacob Carlborg
