Merge
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f8b468c..9130708 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -23,9 +23,6 @@
 string(TOUPPER "${CMAKE_BUILD_TYPE}" U_CMAKE_BUILD_TYPE)
 if (UNIX)
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
-  if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unsequenced")
-  endif()
   if (NOT ${U_CMAKE_BUILD_TYPE} MATCHES DEBUG)
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -flto")
   endif()
diff --git a/README.md b/README.md
index e3b8627..36e8158 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,6 @@
-# pybind11 -- Seamless operability between C++11 and Python
+![pybind11 logo](https://github.com/wjakob/pybind11/raw/master/logo.png)
+
+# pybind11 — Seamless operability between C++11 and Python
 
 **pybind11** is a lightweight header library that exposes C++ types in Python
 and vice versa, mainly to create Python bindings of existing C++ code. Its
diff --git a/include/pybind/pybind.h b/include/pybind/pybind.h
index ecf06db..d8838af 100644
--- a/include/pybind/pybind.h
+++ b/include/pybind/pybind.h
@@ -103,7 +103,7 @@
             PyObject *pyArgs, PyObject *kwargs, bool is_method, detail::index_sequence<Index...>) {
         int index = is_method ? 1 : 0;
         int unused[] = { 0, (process_extra(std::get<Index>(args), index, pyArgs, kwargs), 0)... };
-        (void) unused;
+        (void) unused; (void) index;
     }
 
     static void process_extra(const char *doc, function_entry *entry, const char **, const char **) { entry->doc = doc; }
diff --git a/logo.png b/logo.png
new file mode 100644
index 0000000..36d4c6c
--- /dev/null
+++ b/logo.png
Binary files differ
diff --git a/tools/mkdoc.py b/tools/mkdoc.py
index d1b61c9..09c09cf 100644
--- a/tools/mkdoc.py
+++ b/tools/mkdoc.py
@@ -203,8 +203,9 @@
   Do not edit! These were automatically extracted by mkdoc.py
  */
 
+#define __EXPAND(x)                              x
 #define __COUNT(_1, _2, _3, _4, _5, COUNT, ...)  COUNT
-#define __VA_SIZE(...)                           __COUNT(__VA_ARGS__, 5, 4, 3, 2, 1)
+#define __VA_SIZE(...)                           __EXPAND(__COUNT(__VA_ARGS__, 5, 4, 3, 2, 1))
 #define __CAT1(a, b)                             a ## b
 #define __CAT2(a, b)                             __CAT1(a, b)
 #define __DOC1(n1)                               __doc_##n1
@@ -212,7 +213,7 @@
 #define __DOC3(n1, n2, n3)                       __doc_##n1##_##n2##_##n3
 #define __DOC4(n1, n2, n3, n4)                   __doc_##n1##_##n2##_##n3##_##n4
 #define __DOC5(n1, n2, n3, n4, n5)               __doc_##n1##_##n2##_##n3##_##n4_##n5
-#define DOC(...)                                 __CAT2(__DOC, __VA_SIZE(__VA_ARGS__))(__VA_ARGS__)
+#define DOC(...)                                 __EXPAND(__EXPAND(__CAT2(__DOC, __VA_SIZE(__VA_ARGS__)))(__VA_ARGS__))
 
 #if defined(__GNUG__)
 #pragma GCC diagnostic push