1

有谁知道我如何禁用在文件源代码中写入的标志,而不更改此文件的源代码。也许我必须更改 .exp 文件之一?

我想在-pthread不更改此源代码的情况下禁用标志:

// { dg-do run { target *-*-linux* } }
// { dg-options "-pthread" }
#include <pthread.h>
#include <cxxabi.h>
extern "C" int printf (const char *, ...);
int main()
{
  try
    {
      pthread_exit (0);
    }
  catch (abi::__forced_unwind &)
    {
      printf ("caught forced unwind\n");
      throw;
    }
  catch (...)
    {
      printf ("caught ...\n");
      return 1;
    }
}
4

1 回答 1

0

我不认为你可以,但是因为-pthread*-*-linux 目标只是扩展为-D_REENTRANT-lpthread也许你可以提供一个替换libpthread并将-L dir添加到测试标志,这样系统libpthread.so就不会链接到。

如果您不提供pthread_exit.

于 2012-06-15T18:08:23.320 回答