问题标签 [compiler-directives]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
56 浏览

ios - 使用编译器指令在文件丢失时发出警告

我有一个包含在具有以下名称的捆绑包中的文件:

其中 X 是应用程序的版本。如果版本是 2.8,则文件应命名为database2.8.sqlite. 当应用程序提交给 Apple 时,我必须确保包含此文件。

是否可以创建编译器指令来检查文件是否在包中?

我试过这个,没有成功

file in bundle即使文件不在捆绑包中,也会始终显示。

0 投票
0 回答
171 浏览

fortran - gfortran 编译器指令添加/删除编译器选项

我想暂时禁用一段 Fortran 代码的 gfortran 编译器选项。我正在寻找类似的东西:

看起来gcc/g++ 没有这样的编译器指令。用gfortran可以实现吗?

0 投票
1 回答
1191 浏览

verilog - 非特定的 `include 文件名 - 系统 Verilog 编译器指令

我想使用 `include 指令来调用非特定文件名。例如,在其他目录中有这个文件名“name_defines.svh”。由于“name_defines.svh”的“名称”发生了变化(可以是例如a_defines.svh、b_defines.svh ..等),如果我只使用它是否有可能

或者

以便系统verilog编译器找到文件名并将其包含在我当前的.sv文件中,就像我使用

ps - 假设工作目录中没有其他文件具有结尾的“_defines.svh”字样,并且仅对“name_defines.svh”是唯一的

0 投票
1 回答
47 浏览

c++ - 如何在整个编译过程中遵循预处理器指令

我正在使用一个在 Visual Studio 中编写的充满编译器指令的程序。

我做了一些更改,现在我遇到了一个未解决的外部编译器/链接器错误。

我相信这是由编译器指令引起的,它似乎没有检测到该特定函数的实现,为了调查这一点,我想#ifdef在整个编译过程中遵循编译器指令。

我已经尝试过使用该配置,但在窗口/P中没有看到任何编译器指令。Output

有人知道怎么做这个吗?

0 投票
1 回答
1719 浏览

c - 为一段代码静默未使用的静态函数警告

本着忽略的后果是什么:警告:未使用的参数,但我有未使用的静态函数,

动物.h

我绝对希望SleepyLlama被聪明的编译器检测为未使用并从代码中优化。我不想听到它;潜在地,当我扩展到越来越ANIMAL多的动作时,它会变得分散注意力。但是,我不想干扰关于foo未使用的可能警告。

MSVC(14) has #pragma warning(push),但显然不检查;gcc(4.2) 并且clang-Wunused-function. 我已经尝试过https://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html但它们似乎不适用于功能。foo有没有办法SleepyLlama在不同的编译器之间获取所有警告?

0 投票
2 回答
131 浏览

delphi - 我可以在编译器指令中推断出类型的类型吗

是否可以像这样创建条件定义:

我为什么要这个?
我在使用classrecord针对特定问题之间交替使用。
出于速度原因,我想使用记录,但也想class使用方便。

出于这个原因,我在两者之间切换。
显然我可以添加一个{$define}语句,但如果能够自动执行它会很好。

0 投票
0 回答
260 浏览

vb.net - 为什么 MSBuild 将 #Disable 和 #Enable 指令标记为错误 BC30248?

我正在一个环境中工作,在这个环境中,所有项目都被置于与项目的特定业务领域无关的全球解决方案中。所以解决方案是一个怪物。我习惯于基于关注点分离的更加隔离的方法;但这与问题无关。

此解决方案中的一个项目是用 VB.NET 编写的,并且有一段代码使用#Disable和指令,如此#Enable所述

根据微软的说法,这些指令是有效的,如果我在 Visual Studio 中针对包含这些指令的项目执行特定构建;我得到了一个成功的构建。

但是,该组织需要从命令提示符使用 MSBuild 初步成功构建,以确保它将在构建服务器上构建。我无法得到,因为 MSBuild 报告:

这是引发错误的实际代码块:

我能得出的最好结论是,在执行构建之前必须设置一些 MSBuild 可选标志以适应此情况并防止错误或这些指令已被弃用。虽然不是 100% 肯定是这种情况(如果有的话),但我确实需要让代码在 MSBuild 下成功构建。

如果它们是警告,我可以简单地忽略它们,但事实并非如此。

此外,我已经尝试通过 /p:VisualStudioVersion 开关使用不同的版本。结果都是一样的。

0 投票
1 回答
1271 浏览

python - __future__ 进口如何在幕后工作

我对这个__future__模块很着迷——尤其是它能够改变在 python 中解析语句的方式。

最有趣的是如何做类似的事情

使您能够使用print(而不是print_function,就像您期望任何其他正常导入一样)。

我已经阅读了 Python 中的 __future__ 是什么以及如何/何时使用它,以及它是如何彻底工作的,特别是遇到了一个特定的行:

未来语句是对编译器的指令,即应该使用将在指定的 Python 未来版本中可用的语法或语义来编译特定模块。

我很想知道究竟是什么让这成为可能。特别是,如何像

可以在python2上启用真正的除法,而

可以在 python3 上启用<>语法(我觉得最有趣的是你必须从 " __future__" 导入一个特性以实现向后兼容性)。

无论如何,总而言之,我想知道在__future__导入或导入其工件时编译器如何理解和执行该指令。

0 投票
1 回答
75 浏览

julia - 等效于 Julia 中的 c\c++ 编译器指令

使用编译器指令,如

在 C\C++ 语言中,可以告诉编译器在某些情况下忽略某些代码部分。我很想知道 Julia 语言中是否有与此功能等效的功能。

0 投票
1 回答
6515 浏览

python-3.x - Cython 编译器指令 language_level 不受尊重

我正在使用 Cython 的编译器指令(http://docs.cython.org/en/latest/src/reference/compilation.html#globally)。

编译:

所以language_level指令没有得到尊重。因此,cythonize 最终使用 Python 2 语义,并且由于上面的 print 语句在 Python 2 中无效而引发错误。

但是,包括任何 Python 语句都会使这项工作:

编译和执行:

知道 import 语句如何使language_level受到尊重吗?

我也在Cython GitHub 存储库上提出了同样的问题?