4.3BSD/usr/contrib/icon/test/std24.icn

record array(a,b,c,d,e,f,g)

procedure dummy(u,v,x,y,z)
   suspend u | v
   return x
end

procedure main()
   write("copy(1) ----> ",image(copy(1)) | "none")
   write("copy(1.0) ----> ",image(copy(1.0)) | "none")
   write("copy(\"abc\") ----> ",image(copy("abc")) | "none")
   write("copy('aabbcc') ----> ",image(copy('aabbcc')) | "none")
   write("copy(main) ----> ",image(copy(main)) | "none")
   write("copy([1,2,3]) ----> ",image(copy([1,2,3])) | "none")
   write("copy(table(0)) ----> ",image(copy(table(0))) | "none")
   write("copy() ----> ",image(copy()) | "none")
   write("copy(&input) ----> ",image(copy(&input)) | "none")
   write("w := copy(write) ----> ",image(w := copy(write)) | "none")
   write("w(image(w)) ----> ",image(w(image(w))) | "none")
   write("copy(array()) ----> ",image(copy(array())) | "none")
   write("copy := copy(copy) ----> ",image(copy := copy(copy)) | "none")
   write("x := copy(array) ----> ",image(x := copy(array)) | "none")
   write("x := x(1,2,3,4,5,6,7) ----> ",image(x := x(1,2,3,4,5,6,7)) | "none")
   write("x[-4] ----> ",image(x[-4]) | "none")
   write("v := copy(c) ----> ",image(v := copy(c)) | "none")
   write("c(x) ----> ",image(c(x)) | "none")
   write("c[-4] ----> ",image(c[-4]) | "none")
end