- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在探索 GCC 使用 gcc -Q --help=warning
语法提供的警告。 (有关详细信息,请参阅 3.2 Options Controlling the Kind of Output。)
我想到的是许多(GCC 版本 6.4.1 中的 250 个中有 109 个)警告未归类为 C++。我的意思是,在执行受限查询 gcc -Q --help=warning,c++
时,它们不会出现。 (出于好奇,81 个警告既不是 C++ 也不是 C。)
然而,至少其中一些警告在 C++ 中有效。以 -Waggregate-return
为例。 (在 Compiler Explorer 上查看。)
-Waggregate-return
默认情况下是禁用的,我知道它可能没什么用(参见 Confusion in regards to purpose/behavior of -Waggregate-return? )。不过,这只是一个例子,也许在同案的那109条中有一些有用的标志。
那么,为什么一些 GCC 警告标志不属于 C++ 语言,却在 C++ 中起作用?这里的规则是什么?
最佳答案
这是两个文档中的错误
--help={class|[^]qualifier}[,...]
Print (on the standard output) a description of the command-line options understood by the compiler that fit into all specified classes and qualifiers. These are the
supported classes:
...
language
Display the options supported for language, where language is the name of one of the languages supported in this version of GCC.
或实现(我认为是后者。)因此,如果您愿意,请继续提交错误。请务必在此处发布指向问题报告的链接。
具体来说,您没有看到任何Common,例如标有 CL_COMMON
标志的与语言无关的选项。您确实会看到适用于多种语言的选项,但不是全部(例如,如果它们同时具有 CL_C
和 CL_CXX
标志;CL_COMMON
是单独的标志,其值不是由各个语言标志的值组成)。
负责的代码在 gcc/opts.c:1360
附近:
print_filtered_help (unsigned int include_flags,
unsigned int exclude_flags,
unsigned int any_flags,
unsigned int columns,
struct gcc_options *opts,
unsigned int lang_mask)
unsigned int lang_mask)
...
if (include_flags == 0
|| ((option->flags & include_flags) != include_flags))
{
if ((option->flags & any_flags) == 0)
continue;
}
(调用者为 any_flags
传递 0,因此内部检查总是成功;这不是这里的重点。)
关于c++ - 为什么一些 GCC 警告标志不属于 C++ 语言但在 C++ 中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56594534/
我正在运行一个带有 while 约束的 SQL 查询,其中包含一些“id”。例如: SELECT table.id FROM TableOne table WHERE table.id IN (1,
假设我有以下类型声明: declare type Point2D = { x: number, y: number } 我从服务器获取一些数据并得到以下信息: const response = { x
根据 Angular 文档,Angular 的指令有 3 种类型: 组件 结构化 属性 根据以下官方链接:https://angular.io/guide/attribute-directives#d
在我正在处理的 Spring Boot 应用程序中,我有一个未注释为 bean (@Component) 的类,但包含一个 Autowiring 字段: public class One{ @
我有一个问题,我正在学习 swift 编程,我已经学会了毫无问题地处理表格和集合,包括使用 alamofire 的 cosumo 服务,但我遇到了一个问题,我在个性化表格 View 中有一个集合单元格
我已经在我们办公场所的实时服务器上配置了 TFS。 现在,我们可以访问它,即 windows 域 用户/事件目录 用户但是当我把我的用户名密码 给别人时我们的办公场所,并要求他通过 Web 链接从 v
我的 .plist 的 UIStatusBarHidden 是 false,所以我的应用程序不显示 iOS 状态栏。 连接到自定义 UIView 顶部的 UI 元素在 iPhone 6/7/8 设备上
执行某些 SP 时开始出现以下错误。与此错误相关的代码非常简单,将#temp 表连接到真实表 错误全文: Msg 605, Level 21, State 3, Procedure spSSRSRPT
我有一段代码调用 LogonUser(),然后调用 CreateProcessAsUser()。在 Win32 中,生成的进程属于属于 LOCAL 组的用户(例如,TESTDOMAIN\user1)。
Xcode 6.1 在组件安装完成后出现错误。 Xcode 安装程序是从其他 mac 复制的。请帮助我如何解决 dyld_sim 错误....谢谢 /Applications/Xcode.app/Co
我是一名优秀的程序员,十分优秀!