aboutsummaryrefslogtreecommitdiff
path: root/src/nix/repl.cc
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2019-07-06 21:06:22 +0200
committerEelco Dolstra <edolstra@gmail.com>2019-07-06 21:06:22 +0200
commitcc218b15bad7d1883ac951bc48a8285fcef78916 (patch)
treebb0779a2727c38e2cb05832ac9d9c6ecf5f4638c /src/nix/repl.cc
parente5f881a7e49b2c4401fd868e0fcd2503b16a1dc8 (diff)
parentb5ae85f0882f4857f550ed68b23af260af5000a0 (diff)
Merge remote-tracking branch 'origin/master' into flakes
Diffstat (limited to 'src/nix/repl.cc')
-rw-r--r--src/nix/repl.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/nix/repl.cc b/src/nix/repl.cc
index ce17a2b9f..3a70a23c7 100644
--- a/src/nix/repl.cc
+++ b/src/nix/repl.cc
@@ -9,7 +9,14 @@
#include <readline/history.h>
#include <readline/readline.h>
#else
+// editline < 1.15.2 don't wrap their API for C++ usage
+// (added in https://github.com/troglobit/editline/commit/91398ceb3427b730995357e9d120539fb9bb7461).
+// This results in linker errors due to to name-mangling of editline C symbols.
+// For compatibility with these versions, we wrap the API here
+// (wrapping multiple times on newer versions is no problem).
+extern "C" {
#include <editline.h>
+}
#endif
#include "shared.hh"