;; -*-theme-d-*-

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

;; Expected results: translation and running OK


(define-proper-program (tests test199)


  (import (standard-library core)
	  (standard-library console-io))


  (define-param-proc my-proc (%type)
		     (((a %type) (b <integer>)) (:union <integer> %type) pure)
    (call/cc
     (lambda (((jump (:procedure (<integer>) <none> (pure never-returns))))
	      %type
	      (pure never-returns))
       (jump b)
       a)))


  (define main
    (lambda (() <none> nonpure)
      (let ((result (my-proc 'abc 10)))
	(console-display result)
	(console-newline)))))

