Bug#945133: gcc-9: __has_attribute(ifunc) false positive on hurd and kfreebsd
Hi Samuel, I forwarded the bug to the GCC tracker and they said that your interpretation of the docs is correct. I doubt whether they are willing to change the behaviour, but we'll see. Best, Fabian
Processed: Re: Bug#945133: gcc-9: __has_attribute(ifunc) false positive on hurd and kfreebsd
Processing commands for cont...@bugs.debian.org: > forwarded 945133 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93419 Bug #945133 [gcc-9] gcc-9: __has_attribute(ifunc) false positive on hurd and kfreebsd Set Bug forwarded-to-address to 'https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93419'. > End of message, stopping processing here. Please contact me if you need assistance. -- 945133: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=945133 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems
Bug#945133: gcc-9: __has_attribute(ifunc) false positive on hurd and kfreebsd
forwarded 945133 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93419
Bug#945133: gcc-9: __has_attribute(ifunc) false positive on hurd and kfreebsd
Hello, On 20.11.19 11:43, Fabian Kloetzl wrote: > Recently, the build of one of my packages failed on hurd-i386 and > kfreebsd-* due to unsupported ifuncs [1]. However, I had that code guarded > by __has_attribute(ifunc) which, unfortunately, evaluates to 1 on said > platforms. A minimal testcase is attached. AIUI, that is expected by gcc people: the gcc documentation says: “to test whether the attribute referenced by its operand is recognized by GCC” Strictly speaking, being recognized by GCC doesn't mean being supported on the target platform. I agree that it makes it not really useful here, but I'm not the one to be convinced :) I'd say bring the issue to upstream gcc. Samuel
Bug#945133: gcc-9: __has_attribute(ifunc) false positive on hurd and kfreebsd
Forwarded ... On 20.11.19 11:43, Fabian Kloetzl wrote: > Package: gcc-9 > Version: 9.2.1-17 > Severity: normal > > Dear Maintainer, > > Recently, the build of one of my packages failed on hurd-i386 and > kfreebsd-* due to unsupported ifuncs [1]. However, I had that code guarded > by __has_attribute(ifunc) which, unfortunately, evaluates to 1 on said > platforms. A minimal testcase is attached. > > Best, > Fabian > > 1: https://buildd.debian.org/status/package.php?p=phylonium >
Bug#945133: gcc-9: __has_attribute(ifunc) false positive on hurd and kfreebsd
Package: gcc-9 Version: 9.2.1-17 Severity: normal Dear Maintainer, Recently, the build of one of my packages failed on hurd-i386 and kfreebsd-* due to unsupported ifuncs [1]. However, I had that code guarded by __has_attribute(ifunc) which, unfortunately, evaluates to 1 on said platforms. A minimal testcase is attached. Best, Fabian 1: https://buildd.debian.org/status/package.php?p=phylonium #include int main() { return 0; } #if __has_attribute(ifunc) typedef void (fntype)(void); fntype* fn_select(void) { return NULL; } void fn(void) __attribute__((ifunc("fn_select"))); #endif