diff --git a/llvm/include/llvm/ADT/ilist.h b/llvm/include/llvm/ADT/ilist.h --- a/llvm/include/llvm/ADT/ilist.h +++ b/llvm/include/llvm/ADT/ilist.h @@ -75,19 +75,12 @@ } }; -/// A fragment for template traits for intrusive list that provides default -/// node related operations. -/// -/// TODO: Remove this layer of indirection. It's not necessary. -template -struct ilist_node_traits : ilist_alloc_traits, - ilist_callback_traits {}; - /// Template traits for intrusive list. /// /// Customize callbacks and allocation semantics. template -struct ilist_traits : public ilist_node_traits {}; +struct ilist_traits : ilist_alloc_traits, + ilist_callback_traits {}; /// Const traits should never be instantiated. template struct ilist_traits {};