objective-c - 让 LLVM/Clang 16 位对齐

标签 objective-c xcode macos llvm

我正在处理一个遗留项目,其中有大量文件可以追溯到 OS X 之前的日子。它的数据已 16 位对齐超过 15 年。我想转向完整的 LLVM 编译,但我似乎无法使 2 字节对齐工作。是否有任何编译器级选项可用于此? (之前使用 -malign-mac68k)

我知道这里有#pragma pack(2) 选项。然而,这将需要我修改超过 1000 个源文件以包含它。这是一个最坏的选择,但它似乎是一个 hack。此外,如果这是可能的,那么肯定有一个默认选项来设置对齐方式吧?

最佳答案

根据 clang 的消息来源,它确实支持 mac68k 对齐规则。看来现在您只能通过“#pragma options align=mac68k”启用它。如果您对小型 clang 黑客没问题,那么您也可以实现 cmdline 选项并将补丁提交给 clang。

关于objective-c - 让 LLVM/Clang 16 位对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6430214/

相关文章:

ios - 使用 Swift 提取文本

Swift - 带有 xib 文件的自定义 View ,IBOutlet 为 nil

mysql - 我无法通过终端访问 mac os x 上的 mysql

android - 使 Systrace 在 Mac 上与 4.1.2 设备一起工作

iOS SDK, TextView - 使链接在应用程序浏览器中打开

ios - 如何让这个 UITableView 显示出来?

ios - NSInputStream 与 url 在 iOS 中出现 nil

iphone - 识别使用 UIBezierPath 绘制的不同形状?

objective-c - 如何查找用户点击了 NSBrowser 中的任何行?

ios - 即使未实现,uilongpressgesturerecognizer 也会崩溃