scinterm 1.9のビルドエラー

Scintilla 3.7.5に対応したscinterm 1.9がリリースされていたが、ビルドするとエラー発生。

コンパイラのバージョンなどを変えてみたり、コンパイルオプションを変えてみたりしたが改善せず。

以下の変更で、エラーは取れた。 後で、もうちょっと真面目に調査する。

diff -ru scinterm_1.9-org/ScintillaTerm.cxx scinterm_1.9/ScintillaTerm.cxx
--- scinterm_1.9-org/ScintillaTerm.cxx  2017-06-26 05:25:19.000000000 +0900
+++ scinterm_1.9/ScintillaTerm.cxx      2017-08-04 20:46:51.000000000 +0900
@@ -15,10 +15,13 @@
 #include <string>
 #include <vector>
 #include <map>
+#include <new>
 #include <algorithm>
+#include <memory>

 #include "Platform.h"

+#include "UniqueString.h"
 #include "Scintilla.h"
 #include "ILexer.h"
 #include "Position.h"
@@ -1284,7 +1287,7 @@
           int offset = ry - ny - 1; // -1 ignores list box border
           if (offset == 0 &&
               time - autoCompleteLastClickTime < Platform::DoubleClickTime()) {
-            ListBoxImpl* listbox = reinterpret_cast<ListBoxImpl *>(ac.lb);
+            ListBoxImpl* listbox = reinterpret_cast<ListBoxImpl *>(ac.lb.get());
             if (listbox->doubleClickAction != NULL)
               listbox->doubleClickAction(listbox->doubleClickActionData);
           } else ac.lb->Select(n + offset);