// main.cpp
#include <csignal>

void func(union sigval);

namespace Namespace
{

class Foo
{
private:
  void doSomething() {};

friend void ::func( union sigval );
};

}

static Namespace::Foo foo;

void func( union sigval sv ) {
  (void)sv;
  foo.doSomething();
}

int main() {}