On Mon, Sep 22, 2003 at 07:07:53PM +0000, Angus Leeming spake thusly: > Martin Vermeer wrote: > > Attached my patch (did I get it right?) and the error output. > > Almost ;-) > > What I meant when I said the original was nasty was that it was a fragile > solution. The code compiled if you positioned #include "lyxfont.h" in > paragraph.C in one position and not if it were positioned in another. I > wasn't disputing that you needed _some_ fix. > > So, I'd hope that if you removed your changes to paragraph.C but left the > changes you've made in paragraph_pimpl.[Ch], all should 'just work'. > thereafter, if you could position lyxfont.h in alphabetical order again, > that'd be great. > > -- > Angus
Again patch and error log. No dice. - Martin
Index: paragraph_pimpl.C =================================================================== RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/paragraph_pimpl.C,v retrieving revision 1.84 diff -u -p -r1.84 paragraph_pimpl.C --- paragraph_pimpl.C 16 Sep 2003 14:08:05 -0000 1.84 +++ paragraph_pimpl.C 22 Sep 2003 18:34:03 -0000 @@ -13,6 +13,7 @@ #include <config.h> +#include "lyxfont.h" #include "paragraph_pimpl.h" #include "bufferparams.h" @@ -20,6 +21,7 @@ #include "encoding.h" #include "language.h" #include "LaTeXFeatures.h" + #include "latexrunparams.h" #include "LColor.h" #include "lyxlength.h" @@ -78,6 +80,10 @@ Paragraph::Pimpl::Pimpl(Pimpl const & p, if (p.tracking()) changes_.reset(new Changes(*p.changes_.get())); } + + +Paragraph::Pimpl::~Pimpl() +{} void Paragraph::Pimpl::setContentsFromPar(Paragraph const & par) Index: paragraph_pimpl.h =================================================================== RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/paragraph_pimpl.h,v retrieving revision 1.38 diff -u -p -r1.38 paragraph_pimpl.h --- paragraph_pimpl.h 16 Sep 2003 14:08:05 -0000 1.38 +++ paragraph_pimpl.h 22 Sep 2003 18:34:03 -0000 @@ -30,6 +30,8 @@ struct Paragraph::Pimpl { /// Copy constructor Pimpl(Pimpl const &, Paragraph * owner); /// + ~Pimpl(); + /// void setContentsFromPar(Paragraph const & par); /// set tracking mode void trackChanges(Change::Type type = Change::UNCHANGED);
paragraph.C:1144: warning: #warning FIXME we should check the prev par as well (Lgb) In file included from paragraph.C:21: ../boost/boost/checked_delete.hpp: In function `void boost::checked_delete<LyXFont>(LyXFont *)': ../boost/boost/checked_delete.hpp:52: instantiated from `boost::checked_deleter<LyXFont>::operator ()(LyXFont *) const' ../boost/boost/detail/shared_count.hpp:342: instantiated from `boost::detail::shared_count::shared_count<LyXFont *, boost::checked_deleter<LyXFont> >(LyXFont *, boost::checked_deleter<LyXFont>)' ../boost/boost/shared_ptr.hpp:114: instantiated from `boost::shared_ptr<LyXFont>::shared_ptr<LyXFont>(LyXFont *)' ../boost/boost/shared_ptr.hpp:222: instantiated from `boost::shared_ptr<LyXFont>::reset<LyXFont>(LyXFont *)' ShareContainer.h:47: instantiated from `ShareContainer<LyXFont>::get(const LyXFont &) const' paragraph_pimpl.h:101: instantiated from here ../boost/boost/checked_delete.hpp:32: `sizeof' applied to incomplete type `LyXFont' ../boost/boost/checked_delete.hpp:32: size of array `type_must_be_complete' is negative ../boost/boost/checked_delete.hpp:33: `sizeof' applied to incomplete type `LyXFont' ../boost/boost/checked_delete.hpp:33: creating array with size `-1' ../boost/boost/checked_delete.hpp:34: invalid use of undefined type `class LyXFont' paragraph.h:37: forward declaration of `class LyXFont' ../boost/boost/checked_delete.hpp:30: incomplete `x' defined here ShareContainer.h: In method `class boost::shared_ptr<LyXFont> ShareContainer<LyXFont>::get(const LyXFont &) const': paragraph_pimpl.h:101: instantiated from here ShareContainer.h:47: invalid use of undefined type `class LyXFont' paragraph.h:37: forward declaration of `class LyXFont' make: *** [paragraph.o] Error 1
pgp00000.pgp
Description: PGP signature