heap: merge changes from trunk