* eval.c (Fcommandp): Change `->prompt' to `->intspec'.
+ * data.c (Finteractive_form): If the interactive specification starts
+ with a `(', use it as a Lisp form.
+
* callint.c (Fcall_interactively): Comment fixes.
2007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
if (SUBRP (fun))
{
- if (XSUBR (fun)->prompt)
- return list2 (Qinteractive, build_string (XSUBR (fun)->prompt));
+ char *spec = XSUBR (fun)->intspec;
+ if (spec)
+ return list2 (Qinteractive,
+ (*spec != '(') ? build_string (spec) :
+ Fcar (Fread_from_string (build_string (spec), Qnil, Qnil)));
}
else if (COMPILEDP (fun))
{