Make the default constructor cause the program's symbols to be loaded as
authorReid Spencer <rspencer@reidspencer.com>
Mon, 29 Nov 2004 10:38:54 +0000 (10:38 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Mon, 29 Nov 2004 10:38:54 +0000 (10:38 +0000)
if it was a dynamic library.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18340 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/System/DynamicLibrary.h

index 29ee9a8ffedcb827846e6d383cf08ce35745440e..d8535284eb98d2053ee9f6b97561be0b3132e211 100644 (file)
@@ -32,10 +32,19 @@ namespace sys {
     /// @name Constructors
     /// @{
     public:
+      /// Construct a DynamicLibrary that represents the currently executing
+      /// program. The program must have been linked with -export-dynamic or
+      /// -dlopen self for this to work. Any symbols retrieved with the 
+      /// GetAddressOfSymbol function will refer to the program not to any
+      /// library.
+      /// @throws std::string indicating why the program couldn't be opened.
+      /// @brief Open program as dynamic library.
+      DynamicLibrary();
+
       /// This is the constructor for DynamicLibrary instances. It will open
       /// the dynamic library specified by the \filename Path.
       /// @throws std::string indicating why the library couldn't be opened.
-      /// @brief DynamicLibrary constructor
+      /// @brief Open a dynamic library.
       DynamicLibrary(const char* filename);
 
       /// After destruction, the symbols of the library will no longer be
@@ -68,7 +77,6 @@ namespace sys {
     protected:
       void* handle;  // Opaque handle for information about the library
 
-      DynamicLibrary();  ///< Do not implement
       DynamicLibrary(const DynamicLibrary&); ///< Do not implement
       DynamicLibrary& operator=(const DynamicLibrary&); ///< Do not implement
     /// @}