在Rust的 unsafe 代码中调试UB
这篇文章讲述了在 Rust 中调试UB代码时遇到的问题。
- unsafe 的潜在风险:
- 讨论了 Rust unsafe代码的特性和潜在风险,以及可能因不正确使用而导致的未定义行为。
- 调试未定义行为的方法:
- 提供了识别和解决不安全 Rust 代码中潜在未定义行为问题的方法,如调试器、LLVM Sanitizer 和代码审查。
- 调试技巧和建议:
- 可能包含在调试不安全 Rust 代码时的一些最佳实践和技巧,比如使用断言、规范化指针操作等。
- 避免未定义行为的方法:
- 可能探讨了编写不安全代码时需要注意的事项和最佳实践,以避免可能导致未定义行为的问题。
ReadMore:https://hyphenos.io/blog/2023/debugging-ub-unsafe-rust-code/
调查疯狂的编译时间
作者提到了一些涉及编译器优化、宏展开、代码生成和编译时间的案例和实践经验。
- 编译时间的重要性:
- 强调了对于大型项目或复杂代码库来说,编译时间的优化至关重要,能够显著影响开发者的工作效率和开发周期。
- 编译器优化和技巧:
- 提到了一些编译器优化和技巧,例如减少不必要的代码依赖、使用
#[cfg]
属性进行条件编译、减少宏展开等,以缩短编译时间。
- 提到了一些编译器优化和技巧,例如减少不必要的代码依赖、使用
- 宏展开的影响:
- 讨论了宏展开在 Rust 中的重要性以及宏展开可能导致的编译时间增加。还可能提到了一些减少宏展开影响的方法。
- 编译时间的管理和优化策略:
- 探讨了管理编译时间的策略,例如使用缓存、分析编译时间瓶颈并对其进行优化,以及选择合适的编译器版本等。
ReadMore:https://blog.adamchalmers.com/crazy-compile-time/