This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

dllimport whole classes


I am using Mumit Khan's cygwin gcc-2.95 update to compile a dll containing c++
classes. Building the dll works fine using __attribute__((dllexport)) (after I
updated to Mumit's version to fix the multiple copies of inline functions bug).
Unfortunatly, when compiling code that uses those classes, i.e. tagging the
class __attribute__((dllimport)) I get:

test.cpp:13: Internal compiler error, output_operand_lossage `invalid expression
 as operand'

Here is the source of test.cpp:

class __attribute__((dllimport)) FOO
{
public:
    virtual void foo();
};

void foo()
{
    FOO f;

    f.foo();
}

It only seems to happen if FOO contains virtual functions, i.e. making FOO::foo
non-virtual will work.



--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]