pass implementations not being linked in when they are used if the
implementation is in a .a file.
- Fighting with linking problem due to removing the ::ID elements. Now the
implementation .cpp files for analyses are not being included into gccas
and friends because it is linking to the .a file and there is no explicit
symbol reference to bring in the .o file. The new IncludeFile hack is the
result.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3434
91177308-0d34-0410-b5e6-
96231b3b80d8
virtual void passEnumerate(const PassInfo *P) {}
};
+
+//===---------------------------------------------------------------------------
+// IncludeFile class - This class is used as a hack to make sure that the
+// implementation of a header file is included into a tool that uses the header.
+// This is solely to overcome problems linking .a files and not getting the
+// implementation of passes we need.
+//
+struct IncludeFile {
+ IncludeFile(void *);
+};
#endif