/await (Habilitar la compatibilidad con corrutinas)

Use la opción del compilador /await para habilitar la compatibilidad del compilador con corrutinas.

Sintaxis

/await
/await:strict

Comentarios

La opción del compilador /await habilita la compatibilidad del compilador con las corrutinas de C++ y las palabras clave co_await, co_yield y co_return. Esta opción está desactivada de forma predeterminada. Para más información sobre la compatibilidad con las corrutinas en Visual Studio, consulte el Blog de Visual Studio Team. Para más información sobre la propuesta estándar de corrutinas, vea Borrador de trabajo N4628, especificación técnica de las extensiones de C++ para las corrutinas.

La opción /await está disponible a partir de Visual Studio 2015.

A partir de la versión 16.10 de Visual Studio 2019, se puede usar la opción /await:strict en lugar de /await. La opción proporciona compatibilidad con la corrutina C++20 en los proyectos que se compilan en modo C++14 o C++17. En el modo /await:strict, la compatibilidad con la biblioteca se proporciona en <corrutina> y en el std espacio de nombres.

La opción /await:strict deshabilita las extensiones de lenguaje presentes en /await que no se adoptaron en el estándar de C++20. El uso de estas características produce un error en el compilador. La opción también implementa los comportamientos de la corrutina, como la vista previa de los parámetros de la promesa. Estos comportamientos no están disponibles en /await debido a incidencias de compatibilidad binaria en versiones anteriores de Visual Studio.

Nota:

Los objetos de estado de corrutina obtenidos de coroutine_handle<T>::address() no son compatibles entre los modos /await y /await:strict. El uso de coroutine_handle<T>::from_address() en una dirección obtenida de un manipulador de corrutina creado por código compilado en modo incompatible da como resultado un comportamiento indefinido.

Para establecer esta opción del compilador en el entorno de desarrollo de Visual Studio

  1. Abra el cuadro de diálogo Páginas de propiedades del proyecto.

  2. Seleccione la página de propiedades Propiedades de configuración>C/C++>Línea de comandos.

  3. Escriba la opción del compilador /await o /await:strict en el cuadro Opciones adicionales. Haga clic en Aceptar o en Aplicar para guardar los cambios.

Para establecer esta opción del compilador mediante programación

Consulte también

Opciones del compilador de MSVC
Sintaxis de la línea de comandos del compilador MSVC