pw_assert: Only extern "C" in C++

- Use PW_EXTERN_C_* for the pw_assert_HandleFailure function.
- Specify a void parameter since this is a C function.
- Add C tests for PW_ASSERT.

Change-Id: Ica24e8f4e358381e95b3c95daab8dfc3a8669d43
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/19200
Reviewed-by: Ewout van Bekkum <ewout@google.com>
Reviewed-by: Keir Mierle <keir@google.com>
Commit-Queue: Wyatt Hepler <hepler@google.com>
diff --git a/pw_assert/BUILD.gn b/pw_assert/BUILD.gn
index bf65d47..c9ba261 100644
--- a/pw_assert/BUILD.gn
+++ b/pw_assert/BUILD.gn
@@ -58,6 +58,7 @@
     # problem that light asserts are designed to solve.
     "public/pw_assert/options.h",
   ]
+  public_deps = [ dir_pw_preprocessor ]
 }
 
 # Note: While this is technically a test, doesn't verify any of the output and