First reduction:
--------------------------------
import std.array;
string rp(string subject) {
auto app = appender!string();
app.put(subject[0 .. 0]);
auto m = app.data;
return m;
}
enum e = rp("pre_x");
--------------------------------
Comment #2 by kennytm — 2011-07-18T13:16:45Z
Ultimate cause: create an empty slice from a 'null' pointer.
----------------------
static assert({
char* c = null;
auto m = c[0..0];
return true;
}());
----------------------