DLL Exports: not all my functions are exported

Posted by carmellose on Stack Overflow See other posts from Stack Overflow or by carmellose
Published on 2013-11-05T14:12:48Z Indexed on 2013/11/05 15:53 UTC
Read the original article Hit count: 293

Filed under:
|
|
|
|

I'm trying to create a Windows DLL which exports a number of functions, howver all my functions are exported but one !!

I can't figure it out.

The macro I use is this simple one :

__declspec(dllexport) void myfunction();

It works for all my functions except one. I've looked inside Dependency Walker and here they all are, except one.

How can that be ? What would be the cause for that ? I'm stuck.

Edit: to be more precise, here is the function in the .h :

namespace my {
namespace great {
namespace namespaaace {

__declspec(dllexport) void prob_dump(const char *filename,
        const double    p[],  int  nx,       const double Q[],
        const double xlow[],  const char ixlow[], 
        const double xupp[],  const char ixupp[],
        const double    A[],  int  my,       const double   bA[],
        const double    C[],  int  mz,
        const double clow[],  const char iclow[],
        const double cupp[],  const char icupp[]
        );
}}}

And in the .cpp file it goes like this:

namespace my {
namespace great {
namespace namespaaace {


 namespace {

void dump_mtx(std::ostream& ostr, const double *mtx, int rows, int cols, const char *ind = 0)
  {
       /* some random code there, nothing special, no statics whatsoever */
  }
    } // end anonymous namespace here

  // dump the problem specification into a file
  void prob_dump(
    const char *filename,
    const double    p[],  int  nx,       const double Q[],
    const double xlow[],  const char ixlow[], 
    const double xupp[],  const char ixupp[],
    const double    A[],  int  my,       const double   bA[],
    const double    C[],  int  mz,
    const double clow[],  const char iclow[],
    const double cupp[],  const char icupp[]
    )
   {

    std::ofstream fout;
    fout.open(filename, std::ios::trunc);

    /* implementation there */

    dump_mtx(fout, Q, nx, nx);
   }

}}}

Thanks

© Stack Overflow or respective owner

Related posts about c++

Related posts about Windows