{"action":"opened","issue":{"url":"https://api.github.com/repos/stumpwm/stumpwm/issues/217","labels_url":"https://api.github.com/repos/stumpwm/stumpwm/issues/217/labels{/name}","comments_url":"https://api.github.com/repos/stumpwm/stumpwm/issues/217/comments","events_url":"https://api.github.com/repos/stumpwm/stumpwm/issues/217/events","html_url":"https://github.com/stumpwm/stumpwm/issues/217","id":100364905,"number":217,"title":"ccl build fails at stumpwm::generate-manual step","user":{"login":"futuro","id":916769,"avatar_url":"https://avatars.githubusercontent.com/u/916769?v=3","gravatar_id":"","url":"https://api.github.com/users/futuro","html_url":"https://github.com/futuro","followers_url":"https://api.github.com/users/futuro/followers","following_url":"https://api.github.com/users/futuro/following{/other_user}","gists_url":"https://api.github.com/users/futuro/gists{/gist_id}","starred_url":"https://api.github.com/users/futuro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/futuro/subscriptions","organizations_url":"https://api.github.com/users/futuro/orgs","repos_url":"https://api.github.com/users/futuro/repos","events_url":"https://api.github.com/users/futuro/events{/privacy}","received_events_url":"https://api.github.com/users/futuro/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-08-11T17:34:51Z","updated_at":"2015-08-11T17:34:51Z","closed_at":null,"body":"The command \r\n```\r\nccl --eval \"(load \\\"load-stumpwm.lisp\\\")\" --load manual.lisp --eval \"(progn (stumpwm::generate-manual)(quit))\"\r\n```\r\nFails with the following error\r\n```\r\n> Error: The value #<simple-vector 2> is not of the expected type symbol.\r\n> While executing: macro-function, in process listener(1).\r\n> Type :GO to continue, :POP to abort, :R for a list of available restarts.\r\n> If continued: Skip evaluation of (progn (stumpwm::generate-manual) (quit))\r\n> Type :? for other options.\r\n1 > \r\n```\r\nAfter digging around a bit, it seems this is caused by calling stumpwm::generate-command-doc (part of generate-manual) with the string \"!!! act-on-matching-windows\". Specifically, it's choking on the call to ccl:arglist on line 104 in manual.lisp. Expanded out a little, it looks something like this:\r\n```lisp\r\n(ccl:arglist (symbol-function (find-symbol (string-upcase \"act-on-matching-windows\") :stumpwm)))\r\n```\r\nI'm opening this issue so others know what's going on with the ccl build. Revision 7e2e21a is good, and master is bad. So I ran a bisect with the following script\r\n```sh\r\n#!/bin/sh\r\nmake clean\r\n./autogen.sh\r\n./configure --with-lisp=ccl\r\nmake\r\n```\r\nAnd the results are\r\n```git\r\n398c4b03929ed003b39ee26050c9928a475d732f is the first bad commit\r\ncommit 398c4b03929ed003b39ee26050c9928a475d732f\r\nAuthor: David Bjergaard <dbjergaard@gmail.com>\r\nDate:   Thu Jun 11 09:44:21 2015 -0400\r\n\r\n    travis tweaks\r\n\r\n:100644 100644 2efd7183365d3f99ca1614d5742ab86fd51e0a6b 7e4e1f4698397b7b9b6a67d2dfd9e72c3769ba72 M      .travis.yml\r\n:100644 100644 c878c54fc81e08aba6637009d328355522ecb761 177bab26fa2e06a61e37252e5c8f98f58c94f650 M      stumpwm.texi.in\r\n```\r\nDigging a little deeper, it seems that line 1527 in stumpwm.texi.in, which contains the text \"!!! act-on-matching-windows\", is solely responsible for the build failure. I tested building without that line and it succeeded.\r\n\r\nHere's what I think the problem is: act-on-matching-windows is a macro, but it's been marked as a command in the texi file, so ccl:arglist is being passed something like\r\n```lisp\r\n#(7100233775316992 #<Compiled-function STUMPWM:ACT-ON-MATCHING-WINDOWS Macroexpander #x302001871CAF>)\r\n```\r\ninstead of something like\r\n```lisp\r\n#<Compiled-function STUMPWM:MOVE-WINDOWS-TO-GROUP #x30200187445F>\r\n```\r\n\r\nI changed line 1527 from '!!! act-on-matching-windows' to '%%% act-on-matching-windows', so generate-macro-doc is called on it instead of generate-command-doc, and the compilation succeeded. The documentation looks good, so I'm going to generate a pull request shortly."}}