tclのソースが含まれるorg-modeのテキストを、exportしようとするとflymake-get-file-name-mode-and-masksでエラーになります。
エラー発生箇所はここ
flymake.el
(defun flymake-get-file-name-mode-and-masks (file-name)
"Return the corresponding entry from `flymake-allowed-file-name-masks'."
(unless (stringp file-name)
(error "Invalid file-name"))
Emacsのトレースはこれ
*Backtrace*
Debugger entered--Lisp error: (error "Invalid file-name")
signal(error ("Invalid file-name"))
error("Invalid file-name")
(if (stringp file-name) nil (error "Invalid file-name"))
(unless (stringp file-name) (error "Invalid file-name"))
flymake-get-file-name-mode-and-masks(nil)
(nth 0 (flymake-get-file-name-mode-and-masks file-name))
(let* ((init-f ...)) init-f)
.emacsに以下のコード追加し、org-modeからtcl-modeが呼ばれた時はflymakeを無効にして対応しました。
.emacs
(defvar on-org-mode nil)
(defadvice org-export (around flymake-off activate)
(setq on-org-mode t)
ad-do-it
(setq on-org-mode nil))
; org-modeから呼ばれていないときのみflymakeを有効にする。
(add-hook 'tcl-mode-hook
(lambda ()
(unless on-org-mode
(flymake-mode t))))