let copy = function
| Fixed c1 ->
Fixed (Datatype.Int.copy c1)
| Interval(c1,c2) ->
Interval(Datatype.Int.copy c1, Datatype.Int.copy c2)
| Bounded(c1,c2) ->
Bounded(Datatype.Int.copy c1, Cil_datatype.Term.copy c2)
| Unbounded c1 -> Unbounded (Datatype.Int.copy c1)