Changeset 11740 in project


Ignore:
Timestamp:
08/24/08 20:17:10 (13 years ago)
Author:
felix winkelmann
Message:

bugfix (no decent error message when invalid type is encountered)

Location:
release/4/easyffi
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • release/4/easyffi/easyffi-base.scm

    r11706 r11740  
    458458              (loop (append (third a) more))
    459459              (cons x (loop more)) ) ) ]
    460       [(x . y) (cons x (loop y))] ) ) )
     460      [(x . y) (cons x (loop y))]
     461      [_ (parsing-error "can not substitute macros (internal)")])))
    461462
    462463(define (parse-prototype ts cb sp const discard)
     
    487488          [(('id str) . (or (('op "=") . _) ()))
    488489           (process-variable-def rtype (string->symbol str) const) ]
    489           [else (parsing-error "bad prototype syntax" more)] ) ) ) ) )
     490          [_ (parsing-error "bad prototype syntax" more)] ) ) ) ) )
    490491
    491492(define (parse-enum-def ename ts)
     
    702703      (() #f)
    703704      ((('scope . _) . more) (parse-again more))
    704       ((_ . ts) (loop ts)))))
     705      ((_ . ts) (loop ts))
     706      (_ (parsing-error "error while skipping base constructors (internal)")))))
    705707
    706708(define (parse-member-body ts)
     
    901903        (emit `(define-constant ,name ,val))
    902904        (when export-constants
    903           (emit `(define ,name ,name)))) ] )
     905          (emit `(define ,name ,name)))) ]
     906     (_ (parsing-error "error in enum-def (internal)")))
    904907   (reverse items) ) )
    905908
     
    10841087    [("full_specialization" _)
    10851088     (set! full-specialization #f) ]
    1086     [(decl _)
     1089    [decl
    10871090     (parsing-error "invalid pseudo declaration" decl) ] ) )
    10881091
     
    12801283         (if a
    12811284             (rec (if (vector? a) (vector-ref a 0) a))
    1282              '<top>) ) ] ) ) )
     1285             '<top>) ) ]
     1286      (_ (parsing-error "unknown foreign type" ftype)))))
    12831287
    12841288(define (gen-spec-list args io)
  • release/4/easyffi/easyffi.setup

    r11095 r11740  
    2020 'easyffi
    2121 '("easyffi.so" "easyffi.import.so")
    22  '((version 1.93)
     22 '((version 1.94)
    2323   (syntax)))
    2424
     
    2626 'easyffi-base
    2727 '("easyffi-base.so" "easyffi-base.import.so")
    28  '((version 1.93)))
     28 '((version 1.94)))
    2929
    3030(install-program
    3131 'chicken-wrap
    3232 "chicken-wrap"
    33  '((version 1.93)))
     33 '((version 1.94)))
    3434
Note: See TracChangeset for help on using the changeset viewer.