binder: declare main in global NS, w/o extern "C"
The main function should be in the global namespace, not the android
namespace. We were using 'extern "C"' to prevent the mangling, but the
C++ standard doesn't allow a linkage-specification for main,
https://eel.is/c++draft/basic.start.main#3.sentence-5:
"The main function shall not be declared with a linkage-specification
([dcl.link])."
Clang has started warning on incorrect declarations of main (-Wmain).
Bug: http://b/379133546
Test: m binder_thread_stats libbinderdebug_test binderSafeInterfaceTest
Change-Id: I1c53ce621391b5577c8c04b21117e9b59fe05136
diff --git a/libs/binderdebug/stats.cpp b/libs/binderdebug/stats.cpp
index 9c26afa..972fbd5 100644
--- a/libs/binderdebug/stats.cpp
+++ b/libs/binderdebug/stats.cpp
@@ -22,9 +22,9 @@
#include <inttypes.h>
-namespace android {
+int main() {
+ using namespace android;
-extern "C" int main() {
// ignore args - we only print csv
// we should use a csv library here for escaping, because
@@ -58,5 +58,3 @@
}
return 0;
}
-
-} // namespace android