草庐IT

fno-builtin

全部标签

c++ - 使用 -fno-rtti 编译的共享库的子类类

我正在尝试从使用-fno-rtti编译的共享库进行子类化。不幸的是,我的代码库中的其他库需要-frtti。结果我收到链接错误,因为父类(superclass)没有类型信息结构。正常编译收到的错误:out.o:infunctiontypeinfoforMyClass:myclass.cpp(.data.rel.ro.):error:undefinedreferenceto'typeinfoforNetlinkListener'我想要子类化的类是libsysutils中的一个android类(为了空间而剪掉了一点):classNetlinkListener:publicSocketList

c++ - __builtin_round 不是常量表达式

在G++中,各种内置数学函数在某些条件下是constexpr。例如,以下编译:staticconstexprdoubleA=__builtin_sqrt(16.0);staticconstexprdoubleB=__builtin_pow(A,2.0);虽然它们并不总是constexpr,这取决于参数。例如,__builtin_sqrt(NAN)在用作常量表达式时会导致编译错误。但我遇到了一个奇怪的情况,在我看来它应该是constexpr,但它不是:staticconstexprdoublevalue(){return1.23;}staticconstexprdoubleresult=

c++ - 错误 : Cannot use typeid with -fno-rtti

当我尝试编译我的项目时,我得到了这个“不能将typeid与-fno-rtti一起使用”,我使用的是opencv框架。我用谷歌搜索了这个问题,但似乎我在互联网上发现的错误与我的问题无关。我不知道问题是否与包含、代码或编译器有关。Xcode多次给我错误,但第一个错误在这里:virtualconststd::type_info&type(){returntypeid(T);} 最佳答案 它在消息中告诉您错误:如果您在编译器上使用no-rtti标志,则typeid将不可用。只需启用RTTI;毕竟它是C++的一部分。

c++ - MSVC 等同于 GCC 的 -fno-finite-math-only?

在GCC上,我们启用-ffast-math来加速浮点计算。但是由于我们依赖于NaN和Inf浮点值的正确行为,我们还打开了-fno-finite-math-only,以便假设值不是NaN/Inf的优化对于MSVC,-ffast-math的“等价物”显然是/fp:fast。但是,与GCC的-ffast-math一样,它alsoincludes假设Nan/Inf不存在的优化。(至关重要的是,不能保证像std::isnan()这样的测试会给出“准确”的结果。)是否有一个MSVCC++编译选项允许您利用大部分/fp:fast优化,但仍“正确”处理NaN和Inf值?(或者至少,保证像std::is

gradle - 什么是 .kotlin_builtins 文件,我可以从我的 uberjars 中省略它们吗?

我正在为一个用Kotlin编写的应用程序将proguard集成到我的gradle构建中。我发现proguard正在剥离Kotlin标准库(在我的简单HelloWorld程序中应该如此),但它在我的jar中留下了一堆文件扩展名为.kotlin_builtins的文件。当我配置我的gradle任务以排除这些文件时,该程序似乎仍然可以正常工作。这些文件是什么,它们必须与我的可执行uberjar一起提供吗?这是我的build.gradle文件的内容供引用:buildscript{ext.kotlin_version='1.0.5'ext.shadow_version='1.2.4'reposi

gradle - 什么是 .kotlin_builtins 文件,我可以从我的 uberjars 中省略它们吗?

我正在为一个用Kotlin编写的应用程序将proguard集成到我的gradle构建中。我发现proguard正在剥离Kotlin标准库(在我的简单HelloWorld程序中应该如此),但它在我的jar中留下了一堆文件扩展名为.kotlin_builtins的文件。当我配置我的gradle任务以排除这些文件时,该程序似乎仍然可以正常工作。这些文件是什么,它们必须与我的可执行uberjar一起提供吗?这是我的build.gradle文件的内容供引用:buildscript{ext.kotlin_version='1.0.5'ext.shadow_version='1.2.4'reposi

objective-c - 这些符号 (-fno-objc-arc) 是什么意思?

我在我的项目中混淆了一些代码,既应用了ARC的编码风格,又有些不是。然后我遇到了一个设置一些符号或标志的解决方案:-fno-objc-arc我的问题是,这些标志是什么?这些符号是什么意思-fno-objc-arc?还有这些吗? 最佳答案 -fno-objc-arc标志用于编译器,不适用于链接器。它告诉编译器您的ObjectiveC代码将手动执行所有释放和保留。这是必要的,因为新添加的ARC模式prohibitsexplicituseofretain,release,autorelease,dealloc,andsoon;您甚至无法通

ios - Xcode 使用的 "builtin-copy"是什么/在哪里?

如果我查看iOS应用程序构建的详细信息,在复制资源阶段,我看到Xcode声称使用了称为“内置复制”的东西:CpResource/svn/MyProject/MyResources/myLog.json/Users/benjamin.flynn/Library/Developer/Xcode/DerivedData/MyApp-gocyhvchxrohmbbgmgbzzxtztbku/Build/Products/Debug-iphoneos/MyApp.app/myLog.jsoncd"/svn/MyProject/MyApp"setenvPATH"/Applications/Xcod

swift - 隐式公共(public)访问 (Bool) 内部类型 'Builtin.Int1' : runtime exception if appending instances of 'Int1' to an array

问题我知道我可能不应该摆弄内置类型,但我很好奇,Builtin.Int1类型是否真的可以公开访问,如下所示?如果是这样,为什么将它用作数组元素会导致Swift崩溃?我很好奇,因为我从来没有遇到过我自己无法存储在数组中的自定义类型(但我猜内置类型与我可以使用“构建自己的类型不同”公共(public)swift”)。我使用的是Swift2.2和Xcode7.3。详情查看swift/stdlib/public/core/Bool.swift的源代码,我们注意到我们可以隐式访问内部类型Builtin.Int1(1位整数),它构成了Swift中Bool类型的基础。publicstructBool

Swift 警告 - 从 'Builtin.Int32' 转换为 'Builtin.Int8' 时整数溢出

我收到以下警告,没有提及它发生的行:warning:integeroverflowswhenconvertedfrom'Builtin.Int32'to'Builtin.Int8'此代码中出现警告:extensionNSPoint{funcToString()->String{return"("+self.x.description+","+self.y.description+")"}funcPlus(toBeAdded:NSPoint)->NSPoint{returnNSPoint(x:self.x+toBeAdded.x,y:self.y+toBeAdded.y)}funcMin