summary refs log tree commit diff stats
path: root/tests/cpp/tempty_generic_obj.nim
blob: b4c746a30b8a85e2bbfc7a4adc75a69c57175be3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
discard """
  targets: "cpp"
  output: '''int
float'''
"""

import typetraits

# bug #4625
type
  Vector {.importcpp: "std::vector<'0 >", header: "vector".} [T] = object

proc initVector[T](): Vector[T] {.importcpp: "'0(@)", header: "vector", constructor.}

proc doSomething[T](v: var Vector[T]) =
  echo T.name

var v = initVector[int]()
v.doSomething()

var vf = initVector[float]()
vf.doSomething() # Nim uses doSomething[int] here in C++