"别名"属性导致Windows上的程序崩溃

时间:2015-03-02 13:47:23

标签: c gcc attributes

我有一个小小的Windows(7)GCC(4.8.1 64位)控制台程序,我只是用它来测试一些东西。我编写的其中一个标题使用了alias属性,我最后一次使用它所使用的文件时,我确信这个属性符合预期。

然而,现在,当我调用别名时运行程序Windows告诉我程序已停止工作!如果我在没有别名的情况下直接调用函数,一切都按预期工作......

相关代码位于文件foo.h中,该文件包含在.c文件中,该文件包含调用别名的main()

foo.h中:

#include<stdint.h>

#ifndef FOO_H_
#define FOO_H_

static inline int32_t _foo (int32_t x, int32_t y) {
    // Do foo stuff here. This works when called directly.
}

// But calling via this alias crashes...
int32_t _bar (int32_t x, int32_t y) __attribute__ ((weak, alias ("_foo")));

#endif

我做错了吗?有没有其他人看到这导致程序崩溃?

0 个答案:

没有答案