【发布时间】:2014-10-03 15:51:02
【问题描述】:
【问题讨论】:
-
如果代码在区分大小写环境中工作,它也应该在不区分大小写环境中工作。在这种情况下,将 Clang 配置为区分大小写似乎不是什么跨平台问题,只是可能会更快地在区分大小写的环境中发现构建错误。
-
@user2864740:问题在于那些在不敏感环境中工作的可怜人,他们可能希望避免便携性问题。遗憾的是,并不是每个人都可以选择他们的开发环境。
-
@MikeSeymour 是的,但除非有人不小心使用了错误的大小写(现代不区分大小写的文件系统仍然存储大小写信息,因此原因是 PEBKAC),否则没有问题。并且在导入时使用错误的大小写可以说与编写其他无效/UB代码没有什么不同——这是一个代码错误。
-
@user2864740:确实,这是一个错误。但是,当错误被自动诊断出来时,可以节省很多时间——就像这个一样(至少在原则上)。因此问题是:这个编译器可以配置为诊断它吗?
-
自 2016 年 6 月起支持此功能(无论如何以警告的形式):llvm.org/viewvc/llvm-project?view=revision&revision=272584