main: Make 'catch-mcron-error' macro hygienic.
* scm/mcron/main.scm (catch-mcron-error): Use 'define-syntax-rule' instead of 'defmacro'.
This commit is contained in:
		
					parent
					
						
							
								c8a1238396
							
						
					
				
			
			
				commit
				
					
						2947d84101
					
				
			
		
					 1 changed files with 7 additions and 13 deletions
				
			
		|  | @ -64,19 +64,13 @@ When COMMAND is not specified this uses the first element of (command-line)." | |||
|   (when (and exit-code (not (eq? exit-code 0))) | ||||
|     (primitive-exit exit-code))) | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| ;; Code contributed by Sergey Poznyakoff.  Execute body. If an 'mcron-error | ||||
| ;; exception occurs, print its diagnostics and exit with its error code. | ||||
| 
 | ||||
| (defmacro catch-mcron-error (. body) | ||||
|   `(catch 'mcron-error | ||||
|           (lambda () | ||||
|             ,@body) | ||||
|           (lambda (key exit-code . msg) | ||||
|             (apply mcron-error exit-code msg)))) | ||||
| 
 | ||||
| 
 | ||||
| (define-syntax-rule (catch-mcron-error exp ...) | ||||
|   "Evaluate EXP .... if an 'mcron-error exception occurs, print its diagnostics | ||||
| and exit with its error code." | ||||
|   (catch 'mcron-error | ||||
|     (lambda () exp ...) | ||||
|     (lambda (key exit-code . msg) | ||||
|       (apply mcron-error exit-code msg)))) | ||||
| 
 | ||||
| ;; We will be doing a lot of testing of the command name, so it makes sense to | ||||
| ;; perform the string comparisons once and for all here. | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Mathieu Lirzin
				Mathieu Lirzin