Rust 1.77, la última versión del lenguaje de programación fundado por Mozilla Research centrado en la seguridad, la velocidad y la concurrencia, agrega soporte para literales de cadena C. Los literales de cadena C en Rust se expanden a una cadena terminada en byte nulo en la memoria de tipo & ‘CStr estático. Esto facilita la escritura de código que interoperará con interfaces de idiomas extranjeros que requieren cadenas terminadas en nulo. Toda la verificación de errores relevantes, como la falta de un byte nulo interior, se realiza en el momento de la compilación. Anunciado el 21 de marzo, Rust 1.77 se puede instalar usando Rustup:$ Rustup Update Stable. Otra mejora en Rust 1.77 es la compatibilidad con la recursividad en asíncrono fn. Anteriormente, las funciones asíncronas no podían llamarse a sí mismas debido a una limitación del compilador, pero Rust 1.77 elimina esa limitación. Las llamadas recursivas ahora están permitidas siempre que utilicen una forma de direccionamiento indirecto para evitar un tamaño infinito para el estado de la función. También en Rust 1.77, el offsetof! La macro para campos de estructura se ha estabilizado. Esto proporciona acceso al desplazamiento de bytes del campo público relevante de una estructura. Esta macro puede ser más útil cuando se necesita el desplazamiento de un campo sin una instancia existente de un tipo, dijo el equipo de Rust. Además, los perfiles del administrador de paquetes Cargo en Rust 1.77 que no habilitan debuginfo en las salidas habilitarán strip = «debugiinfo» de forma predeterminada. Esto es principalmente necesario porque la biblioteca estándar precompilada viene con debuginfo, lo que significa que los resultados vinculados estáticamente incluirían la información de depuración de la biblioteca estándar incluso si la compilación local no solicitó explícitamente debuginfo. Finalmente, Clippy en Rust 1.77 agrega una nueva pelusa, incompatible_msrv, lo que indicará a los usuarios si la funcionalidad a la que se hace referencia solo está disponible en versiones más recientes que la versión mínima admitida declarada de Rust. Rust 1.77 sigue al lanzamiento del mes pasado de Rust 1.76, que incluía actualizaciones de compatibilidad ABI. Copyright © 2024 IDG Communications, Inc.

Source link