Hello<br><br>Visual Studio is complaining about the mix of struct and class.<br><br>2>C:\dev\llvm\include\llvm/ADT/ValueMap.h(202) : warning C4099: 'llvm::DenseMapInfo<llvm::ValueMapCallbackVH<KeyT,ValueT,Config,ValueInfoT>>' : type name first seen using 'struct' now seen using 'class'<br>
2> C:\dev\llvm\include\llvm/ADT/ValueMap.h(251) : see reference to class template instantiation 'llvm::ValueMapCallbackVH<KeyT,ValueT,Config,ValueInfoT>' being compiled<br><br><br>Below you can find a patch which removes the warning.<br>
<br>Marius Wachtler<br><br><br><br>Index: include/llvm/ADT/ValueMap.h<br>===================================================================<br>--- include/llvm/ADT/ValueMap.h (revision 85194)<br>+++ include/llvm/ADT/ValueMap.h (working copy)<br>
@@ -199,7 +199,7 @@<br> template<typename KeyT, typename ValueT, typename Config, typename ValueInfoT><br> class ValueMapCallbackVH : public CallbackVH {<br> friend class ValueMap<KeyT, ValueT, Config, ValueInfoT>;<br>
- friend class DenseMapInfo<ValueMapCallbackVH>;<br>+ friend struct DenseMapInfo<ValueMapCallbackVH>;<br> typedef ValueMap<KeyT, ValueT, Config, ValueInfoT> ValueMapT;<br> typedef typename llvm::remove_pointer<KeyT>::type KeySansPointerT;<br>
<br><br><br><br><br><br><br>