>From bearophile's ported benchmark: // Getters/Setters pure nothrow SimpleLoop* parent() { return parent_; } //... pure nothrow void setParent(SimpleLoop* parent) { parent_ = parent; parent.addChildLoop(&this); } //... SimpleLoop* parent_; Why does that compile? There is no way those functions can be pure. Timon