emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Joost Kremers <joostkremers@fastmail.fm>
To: hymie! <hymie@lactose.homelinux.net>
Cc: emacs-orgmode@gnu.org
Subject: Re: malformed function
Date: Wed, 11 Jul 2018 11:35:14 +0200	[thread overview]
Message-ID: <877em2aze5.fsf@fastmail.fm> (raw)
In-Reply-To: <slrnpk6pdn.7hg.hymie@lactose.homelinux.net>


On Mon, Jul 09 2018, hymie! wrote:
> Greetings.
>
> I know this is technically

Technically and practically. ;-)

> an emacs problem and not an Orgmode problem,
> but maybe you guys will see the error that I can't find.

A better place to ask would probably be the mailing list 
help-gnu-emacs, but:

> I have two different machines.  One is a Linux machine running
> Orgmode 9.1.13 under Emacs 25.3.1 , and one is a Windows 10 
> machine
> running Orgmode 9.1.13 under Emacs 24.5.1 .  Both have the same 
> .emacs
> file as far as I can tell.

Try diff or ediff to make sure.

> The Linux machine is getting this error:
>
> Warning (bytecomp): ‘(extract-window (line) (let ((start
> (get-text-property 1 (quote time-of-day) line)) (dur 
> (get-text-property
> 1 (quote duration) line))) (cond ((and start dur) (cons start
> (org-time-from-minutes (+ dur (org-time-to-minutes start))))) 
> (start
> start) (t nil))))’ is a malformed function

That means that the entire s-expr (extract-window ... nil)))) is 
being interpreted as a function, which is caused by the fact that 
it is the first element of the list ((extract-window ... nil))))) 
(note extra pair of parens). Since such an s-expr cannot be a 
function, you get an error.

The fact that it is interpreted as a function indicates that the 
byte compiler doesn't know that `flet' is a macro, which in turn 
indicates that you haven't loaded the required library.

Note that the documentation for `flet' says that it has been 
obsolete since Emacs 24.3 and that you should be using `cl-flet' 
instead (or `cl-letf', but that doesn't seem to be what you want). 
So best thing to do is to replace `flet' with `cl-flet' and then 
add `(require 'cl-lib)' somewhere at the top of your init file, 
and you should be good to go.

Why you're only getting this error on one machine isn't entirely 
clear to me. It could be that something changed between Emacs 24 
and 25 that causes this, it could be that you're loading a package 
on the Windows machine that loads cl or cl-lib and that you don't 
use on Emacs.

HTH


-- 
Joost Kremers
Life has its moments

  reply	other threads:[~2018-07-11  9:35 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-09 13:37 malformed function hymie!
2018-07-11  9:35 ` Joost Kremers [this message]
2018-07-11  9:48   ` Joost Kremers
2018-07-11 11:39   ` hymie!

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=877em2aze5.fsf@fastmail.fm \
    --to=joostkremers@fastmail.fm \
    --cc=emacs-orgmode@gnu.org \
    --cc=hymie@lactose.homelinux.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).