Fun with macros, part n+1 added by megane on Tue Jul 31 10:18:13 2018

$ ./run.sh 
  ::::::::::::::
  m1.scm
  ::::::::::::::
  (module
   m1
   (foo)
   (import scheme)
   (cond-expand
    (chicken-5 (import (chicken base)))
    (else (import chicken)))

   (define-syntax foo
     (ir-macro-transformer
      (lambda (e i cmp)
        (apply
         (lambda (name)
           `(define-syntax ,(strip-syntax name)
              (syntax-rules () ((_ . _) (void)))))
         (cdr e)))))

   )
  ::::::::::::::
  main.scm
  ::::::::::::::
  (cond-expand
   (chicken-5 (import m1))
   (else (use m1)))

  (foo foo)
  (foo foo)
  ::::::::::::::
  run.sh
  ::::::::::::::
  #!/usr/bin/env bash
  set -e
  set -o pipefail
  rm -rf *.so *.import.*
  more * | cat
  echo "################################################################################"
  csc -J -s m1.scm
  csi -version
  csi -qbn main.scm
  ################################################################################
  CHICKEN
  (c) 2008-2018, The CHICKEN Team
  (c) 2000-2007, Felix L. Winkelmann
  Version 5.0.0 (rev ea1202b)
  linux-unix-gnu-x86-64 [ 64bit dload ptables ]

  [panic] Low-level type assertion (C_header_size(C_VAL1(sym))>(C_VAL2(2))) failed at runtime.c:12135 - execution terminated

  ...more...
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <syntax>
  <eval> 	<--