On 08/01/2012 01:13 PM, Kinkie wrote: > the attached patch partly fixes CLANG support for Trunk.
> - Slot slots[]; ///< slots storage > + Slot *slots; ///< slots storage ... > + slots=new Slot[limit]; This and similar changes in trunk r12255 broke virtually all shared memory caching. What used to be a part of an object in shared memory became a pointer to a local memory object. Workers were not sharing cache contents after this (among other problems). A failed OpenSUSE testRock unit test exposed the bug. I believe I was OoO when this patch was posted in August so I could not review this in time. I am sure I would have caught this otherwise. Sorry. If there are no better ideas, I am going to undo these changes. Clang support is nice, but not as important as working code (and we should not expect Clang understand and help us with shared memory constraints anyway). I will try to help with Clang support issues that will resurface, but I hope this will not make me responsible for them. The code is not buggy; it is Clang that has issues with it. If you need my help with Clang, please post details about the problem. For example, does the old code just create a defect in Clang report or blocks Clang from interpreting the whole source file? Thank you, Alex.
