made complex constructor trivial for device code