I'm working on a makefile to build the oo api examples.
Everything is fine, except for 05.user_metadata.cpp
Executing this:
c++ -c -Wall -g3 -std=c++11 -fno-rtti -I/opt/firebird/include/ \
05.user_metadata.cpp -o 05.user_metadata.o
produces this error:
05.user_metadata.cpp: In function ‘int main()’:
05.user_metadata.cpp:212:14: error: invalid new-expression of abstract class
type ‘MyMetadata’ meta = new MyMetadata;
^~~~~~~~~~
05.user_metadata.cpp:46:7: note: because the following virtual functions
are pure within ‘MyMetadata’: class MyMetadata : public
IMessageMetadataImpl<MyMetadata, ThrowStatusWrapper> ^~~~~~~~~~
In file included from /opt/firebird/include/firebird/Interface.h:42:0,
from ifaceExamples.h:39,
from 05.user_metadata.cpp:33:
/opt/firebird/include/firebird/IdlFbInterfaces.h:8875:20: note:
unsigned int Firebird::IMessageMetadataImpl<Name, StatusType,
Base>::getAlignment(StatusType*) [with Name = MyMetadata; StatusType =
Base>Firebird::ThrowStatusWrapper; Base =
Base>Firebird::IReferenceCountedImpl<MyMetadata,
Base>Firebird::ThrowStatusWrapper,
Base>Firebird::Inherit<Firebird::IVersionedImpl<MyMetadata,
Base>Firebird::ThrowStatusWrapper,
Base>Firebird::Inherit<Firebird::IMessageMetadata> > > >] virtual unsigned
Base>getAlignment(StatusType* status) = 0; ^~~~~~~~~~~~
/opt/firebird/include/firebird/IdlFbInterfaces.h:8876:20: note:
unsigned int Firebird::IMessageMetadataImpl<Name, StatusType,
Base>::getAlignedLength(StatusType*) [with Name = MyMetadata; StatusType =
Base>Firebird::ThrowStatusWrapper; Base =
Base>Firebird::IReferenceCountedImpl<MyMetadata,
Base>Firebird::ThrowStatusWrapper,
Base>Firebird::Inherit<Firebird::IVersionedImpl<MyMetadata,
Base>Firebird::ThrowStatusWrapper,
Base>Firebird::Inherit<Firebird::IMessageMetadata> > > >] virtual unsigned
Base>getAlignedLength(StatusType* status) = 0; ^~~~~~~~~~~~~~~~
Is this an error in the code or in my makefile?
Paul
--
Paul Reeves
http://www.ibphoenix.com
Supporting users of Firebird
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel