[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[PATCH 06/10] provide dummy bodies for pure functions



From: Andrei Zavada <johnhommer@gmail.com>

in order for newer g++ to accept some template declarations
---
 .../projects/library/seqan/file/file_format.h        | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

diff --git a/mugsy-seqan/projects/library/seqan/file/file_format.h b/mugsy-seqan/projects/library/seqan/file/file_format.h
index 87212bf..d3d4271 100644
--- a/mugsy-seqan/projects/library/seqan/file/file_format.h
+++ b/mugsy-seqan/projects/library/seqan/file/file_format.h
@@ -136,27 +136,31 @@ public:
 	~FileFormat() {};
 	FileFormat const & operator =(FileFormat const &) {}
 
+        // flesh out the following methods in order to
+        // let g++ accept this forward:
+        // projects/library/seqan/file/file_generated_forwards.h:962:66: error: invalid abstract return type 'seqan::FileFormat<TFile, TData, TMeta, void>'
+        //  template <typename TFile, typename TData, typename TMeta> inline FileFormat<TFile, TData, TMeta, void> guessFileFormat(TFile & file, TData & data);        // "projects/library/seqan/file/file_form */
 	virtual void *
-	formatID_() const = 0;
+	formatID_() const { return 0; }
 
 	virtual void
-	read_(TFile & file, TData & data) const = 0;
+	read_(TFile & file, TData & data) const {}
 	virtual void
-	read_(TFile & file, TData & data, TSize limit) const = 0;
+	read_(TFile & file, TData & data, TSize limit) const {}
 
 	virtual void
-	readMeta_(TFile & file, TMeta & meta) const = 0;
+	readMeta_(TFile & file, TMeta & meta) const {}
 
 	virtual void
-	goNext_(TFile & file) const = 0;
+	goNext_(TFile & file) const {}
 
 	virtual TSize
-	length_(TFile & file) const = 0;
+                length_(TFile & file) const { return (TSize)-1; }
 
 	virtual void
-	write_(TFile & file, TData & data) const = 0;
+	write_(TFile & file, TData & data) const {}
 	virtual void
-	write_(TFile & file, TData & data, TMeta & meta) const = 0;
+	write_(TFile & file, TData & data, TMeta & meta) const {}
 
 };
 
-- 
2.3.5


Reply to: