123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193 |
- discard """
- targets: "c"
- matrix: "--debugger:native"
- ccodecheck: "'_ZN14titaniummangle8testFuncE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE6stringN14titaniummangle3FooE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3int7varargsI6stringE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncEN14titaniummangle3BooE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE8typeDescIN14titaniummangle17EnumAnotherSampleEE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3ptrI14uncheckedArrayI3intEE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3setIN14titaniummangle10EnumSampleEE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE4procI6string6stringE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3intN10Comparable10ComparableE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3int3int'"
- ccodecheck: "'_ZN14titaniummangle8testFuncEN14titaniummangle10EnumSampleE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncEN14titaniummangle17EnumAnotherSampleE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3int3int'"
- ccodecheck: "'_ZN14titaniummangle8testFuncEN14titaniummangle10EnumSampleE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncEN14titaniummangle17EnumAnotherSampleE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE5tupleI3int3intE7cstring'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE5tupleI5float5floatE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3ptrI3intE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3ptrIN14titaniummangle3FooEE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3ptrI3ptrI3intEE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3refIN14titaniummangle3FooEE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3varIN14titaniummangle3FooEE5int325int323refIN14titaniummangle3FooEE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE3varI3intE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE9openArrayI6stringE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE5arrayI7range013intE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE9ContainerI3intE'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE10Container2I5int325int32E'"
- ccodecheck: "'_ZN14titaniummangle8testFuncE9ContainerI10Container2I5int325int32EE'"
- """
- #When debugging this notice that if one check fails, it can be due to any of the above.
- type
- Comparable = concept x, y
- (x < y) is bool
- Foo = object
- a: int32
- b: int32
- FooTuple = tuple
- a: int
- b: int
- Container[T] = object
- data: T
-
- Container2[T, T2] = object
- data: T
- data2: T2
- Boo = distinct Foo
- Coo = Foo
- Doo = Boo | Foo
- TestProc = proc(a:string): string
- type EnumSample = enum
- a, b, c
- type EnumAnotherSample = enum
- a, b, c
- proc testFunc(a: set[EnumSample]) =
- echo $a
- proc testFunc(a: typedesc) =
- echo $a
- proc testFunc(a: ptr Foo) =
- echo repr a
- proc testFunc(s: string, a: Coo) =
- echo repr a
- proc testFunc(s: int, a: Comparable) =
- echo repr a
- proc testFunc(a: TestProc) =
- let b = ""
- echo repr a("")
- proc testFunc(a: ref Foo) =
- echo repr a
- proc testFunc(b: Boo) =
- echo repr b
- proc testFunc(a: ptr UncheckedArray[int]) =
- echo repr a
- proc testFunc(a: ptr int) =
- echo repr a
- proc testFunc(a: ptr ptr int) =
- echo repr a
- proc testFunc(e: FooTuple, str: cstring) =
- echo e
- proc testFunc(e: (float, float)) =
- echo e
- proc testFunc(e: EnumSample) =
- echo e
- proc testFunc(e: var int) =
- echo e
- proc testFunc(e: var Foo, a, b: int32, refFoo: ref Foo) =
- echo e
- proc testFunc(xs: Container[int]) =
- let a = 2
- echo xs
- proc testFunc(xs: Container2[int32, int32]) =
- let a = 2
- echo xs
- proc testFunc(xs: Container[Container2[int32, int32]]) =
- let a = 2
- echo xs
- proc testFunc(xs: seq[int]) =
- let a = 2
- echo xs
- proc testFunc(xs: openArray[string]) =
- let a = 2
- echo xs
- proc testFunc(xs: array[2, int]) =
- let a = 2
- echo xs
- proc testFunc(e: EnumAnotherSample) =
- echo e
- proc testFunc(a, b: int) =
- echo "hola"
- discard
- proc testFunc(a: int, xs: varargs[string]) =
- let a = 10
- for x in xs:
- echo x
- proc testFunc() =
- var a = 2
- var aPtr = a.addr
- var foo = Foo()
- let refFoo : ref Foo = new(Foo)
- let b = Foo().Boo()
- let d: Doo = Foo()
- testFunc("", Coo())
- testFunc(1, )
- testFunc(b)
- testFunc(EnumAnotherSample)
- var t = [1, 2]
- let uArr = cast[ptr UncheckedArray[int]](t.addr)
- testFunc(uArr)
- testFunc({})
- testFunc(proc(s:string): string = "test")
- testFunc(20, a.int32)
- testFunc(20, 2)
- testFunc(EnumSample.c)
- testFunc(EnumAnotherSample.c)
- testFunc((2, 1), "adios")
- testFunc((22.1, 1.2))
- testFunc(a.addr)
- testFunc(foo.addr)
- testFunc(aPtr.addr)
- testFunc(refFoo)
- testFunc(foo, 2, 1, refFoo)
- testFunc(a)
- testFunc(@[2, 1, 2])
- testFunc(@["hola"])
- testFunc(2, "hola", "adios")
- let arr: array[2, int] = [2, 1]
- testFunc(arr)
- testFunc(Container[int](data: 10))
- let c2 = Container2[int32, int32](data: 10, data2: 20)
- testFunc(c2)
- testFunc(Container[Container2[int32, int32]](data: c2))
-
- testFunc()
|