// By using the static specifier, we're indicating
// that Foo() should have internal linkage.  Other
// .c files cannot see or invoke Foo().
static int Foo(int x) {
  return x*3 + 1;
}

// Bar is "extern" by default.  Thus, other .c files
// could declare our Bar() and invoke it.
int Bar(int x) {
  return 2*Foo(x);
}