;; -*-theme-d-*-

;; Copyright (C) 2008-2013 Tommi Höynälänmaa
;; Distributed under GNU General Public License version 3,
;; see file doc/GPL-3.

;; Expected results: compilation OK


(define-interface (tests test106)

  (import (standard-library core))

  (define-class <a> <object> #t #f #f public ()
    ((x <integer> public module)))

  (define-class <b> <a> #t #f #f public ()
    ((y <integer> public module)))

  (define-class <c> <object> #t #f #f public ()
    ((str1 <string> public module)))

  (define-class <d> <c> #t #f #f public ()
    ((str2 <string> public module)))

  (declare my-integer->string (:procedure (<integer>) <string> pure))

  (declare-method my-method (:simple-proc (<object>) <object> pure)))

