SuperAPI AI 工具集

c-bounds-safety

编程与开发

查看项目

更新于 10-15 10:33

技能介绍

用途

-fbounds-safety 是 C 语言的一个扩展,旨在通过在语言层面强制边界安全来防止越界内存访问。它会在运行时插入自动边界检查,在编译期拒绝不安全的指针操作,并要求程序员提供边界注解,以便编译器能够保证安全。越界访问会变成确定性的陷阱,而不是可被利用的漏洞。

该技能用于在采用 -fbounds-safety 或修改代码时提供帮助。

主要能力

  • 提供 -fbounds-safety 语言扩展的指导。
  • 涵盖语言模型、指针注解。
  • 涵盖在现有 C 代码中采用边界安全。
  • 涵盖编译器构建设置。

使用方式

当帮助采用 -fbounds-safety 或进行代码更改时,在建议更改之前,先询问有关用户代码库和目标的澄清问题。对于涉及多个文件或非平凡注解决策的复杂任务,使用计划模式在实施前提出方案。

详细文档

采用工作前必读:在采用任务开始时,必须通过 Read 工具完整阅读以下三份文档,并在采用工作流中任何修改源代码的步骤之前,通过 Read 工具重新阅读它们,除非其内容在活动上下文中可验证为最新:

  • adoption-strategies.md — 在现有 C 项目中采用 -fbounds-safety 的工作流(完整模式和仅头文件模式)。
  • language-overview.md — -fbounds-safety 的语言参考:指针种类、注解以及管理它们的规则。
  • common-patterns-and-pitfalls.md — 在实际采用过程中遇到的配方和反模式。

其他参考(按需阅读):

  • 有关编译器标志、Xcode 构建设置、软陷阱模式和 ptrcheck.h 配置,请阅读 build-settings.md。
  • 有关在运行时调试边界违规——陷阱行为、LLDB 命令、宽指针检查、观察点、崩溃日志分析和软陷阱调试,请阅读 runtime-debugging.md。

适用场景

适用于在现有 C 项目中采用 -fbounds-safety、进行相关代码更改、处理指针注解、配置编译器构建设置,以及在运行时调试边界违规等场景。

限制

资料中未提供关于收费、价格、平台支持范围、具体效果或详细使用步骤的更多信息。