From ea1924e62162b299d797d23992a466142b3c6c68 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Wed, 17 Nov 2010 17:23:53 +0000 Subject: [PATCH] Add a comment explaining why r117813 was needed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119518 91177308-0d34-0410-b5e6-96231b3b80d8 --- examples/clang-interpreter/main.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/examples/clang-interpreter/main.cpp b/examples/clang-interpreter/main.cpp index 2866c44c3c..1890848f35 100644 --- a/examples/clang-interpreter/main.cpp +++ b/examples/clang-interpreter/main.cpp @@ -32,6 +32,11 @@ using namespace clang; using namespace clang::driver; +// This function isn't referenced outside its translation unit, but it +// can't use the "static" keyword because its address is used for +// GetMainExecutable (since some platforms don't support taking the +// address of main, and some platforms can't implement GetMainExecutable +// without being given the address of a function in the main executable). llvm::sys::Path GetExecutablePath(const char *Argv0) { // This just needs to be some symbol in the binary; C++ doesn't // allow taking the address of ::main however. -- 2.40.0