This file is indexed.

/usr/share/gauche-0.9/0.9.5/lib/srfi-55.scm is in gauche 0.9.5-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
;;;
;;; SRFI-55   require-extension
;;;
;;; Written by Shiro Kawai
;;;

;; This file is to be autoloaded

(define-module srfi-55
  (export require-extension))
(select-module srfi-55)

;; We expand require-extension into cond-expand, which will
;; load and imports required features if necessary.
;; (This depends on the fact that Gauche's cond-expand has an effect
;; after the form).
;;
;; An important extension from the plain cond-expand is that
;; if we can't cond-expand to srfi-N, we look for the module
;; srfi-N from the current load path.

(define-macro (require-extension . clauses)
  (define (rec clauses)
    (cond ((null? clauses) #t)
          ((pair? (car clauses))
           (if (eq? (unwrap-syntax (caar clauses)) 'srfi)
             (require-srfi (cdar clauses) (cdr clauses))
             (error "require-extension: unknown extension identifier:"
                    (car clauses))))
          (else
           (error "require-extension: bad clause:" (car clauses)))))
  (define (require-srfi ids rest)
    (if (null? ids)
      (rec rest)
      (let ((id (string->symbol #"srfi-~(car ids)")))
        `(cond-expand (,id ,(require-srfi (cdr ids) rest))
                      (else
                       (use ,id) ;; count on the user providing srfi-N.scm
                       ,(require-srfi (cdr ids) rest))))))
  (rec clauses))