Given the definition of sycl::ordered_queue, it can not be passed as a parameter to functions or methods that take a sycl::queue because it is not derived from sycl::queue. This limits the usefulness of sycl::ordered_queue. (Or all existing code needs to be updated to accept both types).