diff --git a/ChangeLog b/ChangeLog index 1cce619778..510242bb9e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2002-06-14 Angus Leeming + + * INSTALL: how to compile with Compaq cxx on Tru64 Unix. + 2002-06-07 Jean-Marc Lasgouttes * configure.in: do the checking for xforms outside of the diff --git a/INSTALL b/INSTALL index 589a396519..eef62e211f 100644 --- a/INSTALL +++ b/INSTALL @@ -335,56 +335,8 @@ notify us. then you need to upgrade the version of the xforms library you have installed. - o It is possible to compile lyx with Tru64 Unix cxx compiler - version 6.2, provided one uses - CXX='cxx -std strict_ansi' - CXXFLAGS='-ptr /tmp/lyx_cxx_repository -g' - CC=cc - - Note that this will not work when compiling directly from the cvs - repository, due to the tricks used by automake for dependencies. Ask - Jean-Marc.Lasgouttes@inria.fr for a workaround. - - Or rather, it may well work if you are using automake 1.5 and autoconf 2.5 - or greater, but you'll have to patch automake's depcomp first. (Depcomp - is a little shell script to automagically work out file dependencies - and it's broken for automake 1.5 and Tru64 :-(). The patch is to be found - in config/depcomp.diff. - Angus 22 March, 2002. - - o On Tru64 Unix, you may have to compile with - --with-included-string to work around a Tru64 linker limitation - (the STL string template creates names which may be too long). We - also had reports that it helps with gcc 2.95.2 on solaris 2.6. - - Using Tru64 Unix 4.0e, the std::string is fine. - Angus 22 March, 2002. - - o On Tru64 Unix with cxx, you may have a compilation error in - lyx_main.C if you have GNU gettext installed. This is due to a bug - in gettext. To solve this, you can either (1) configure with - --with-included-gettext or (2) add -D__STDC__ to cxx flags. - - o On Tru64 Unix 4.0e, the STL library routine std::count is broken - (/usr/include/cxx/algorithm.cc, line 289 on my machine). - It calculates "n" but does not return it! The fix is to add "return n;" to - the end of the (4-line long) routine. - Angus 22 March, 2002. - - o On Tru64 Unix 4.0e, compilation of support/lyxsum.C dies horribly. The - work-around is to use the old version, 1.18, of this routine. Ask - Angus Leeming for details. - Angus 22 March, 2002. - - o Some systems lack functions that LyX needs. To fix this, configure - tries to link against the -liberty library, if it is available. - If you experience problems with missing symbols at link time, you - could try to install libiberty.a, which comes with several GNU - packages (in particular libg++). In any case, please report your - problems to lyx-devel@lists.lyx.org. - - The option --without-liberty disable the detection of -liberty. It - is meant for debugging purpose only. + o On solaris 2.6, you may have to compile with --with-included-string + if compiling with gcc 2.95.2. o According to David Sundqvist , some changes are needed to compile with aCC on HP-UX 10.20. These are the @@ -395,6 +347,55 @@ notify us. # which currently break. LIBS = -lforms -lXpm -lSM -lICE -lc -lm -lX11 -lCsup # must link with Csup - LDFLAGS = -L/opt/aCC/lib # perhaps not needed. + LDFLAGS = -L/opt/aCC/lib # perhaps not needed. + o LyX can be compiled on Tru64 Unix with either GNU's gcc or the default + Compaq cxx compiler. + There are no Alpha-specific problems with gcc. + + The following notes all refer to compilation with the Compaq cxx compiler. + + LyX cannot be compiled on Tru64 Unix 4.0d or 4.0e with the default cxx + compiler. You should upgrade to at least cxx V6.2, to be found at + ftp::/ftp.compaq.com/pub/products/C-CXX/tru64/cxx/CXX622V40.tar. Users + running Tru64 Unix 4.0f and greater should have no real problems compiling + LyX. + + cxx V6.2 will compile LyX out of the box. + cxx V6.3-020 is also known to work, although there is a bug in + /usr/include/cxx/deque that will break compilation in FormPreferences.C. + Compaq are investigating, but a patch that works /now/ is: + +--- /usr/include/cxx/deque_safe Mon Mar 4 21:09:50 2002 ++++ /usr/include/cxx/deque Mon Mar 4 21:09:00 2002 +@@ -570,9 +570,11 @@ + { + if (size() >= x.size()) + erase(copy(x.begin(), x.end(), begin()), end()); +- else +- copy(x.begin() + size(), x.end(), +- inserter(*this,copy(x.begin(),x.begin()+size(),begin()))); ++ else { ++ const_iterator mid = x.begin() + difference_type(size()); ++ copy(x.begin(), mid, begin()); ++ insert(end(), mid, x.end()); ++ } + } + return *this; + } + + At the time of writing, cxx V6.5-026 is the latest cxx compiler. It is + /not/ recommended. Not only do the bugs in the system header files still + exist, but the compiler itself appears to be both buggy and extremely + bloated (trebles the size of the stripped LyX binary). + + In order to compile LyX with the cxx compiler, you should run configure + with the following flags: + CXX='cxx -std strict_ansi' + CXXFLAGS='-nopure_cname -nocleanup -ptr /tmp/lyx_cxx_repository -O2' + CC='cc -std1' + The -nopure_cname flag is needed for compilers V6.3 and above because + LyX makes use of functions like popen, pclose that are defined in the + c version of but are not formally part of any c/c++ standard. + They are not, therefore, included in the header file. diff --git a/src/BufferView_pimpl.C b/src/BufferView_pimpl.C index 73e690de18..a838d78f5b 100644 --- a/src/BufferView_pimpl.C +++ b/src/BufferView_pimpl.C @@ -75,6 +75,14 @@ extern string current_layout; +#ifndef CXX_GLOBAL_CSTD +using std::tm; +using std::localtime; +using std::time; +using std::setlocale; +using std::strftime; +#endif + using std::vector; using std::find_if; using std::find; diff --git a/src/ChangeLog b/src/ChangeLog index 86a59cc399..df9680e20b 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,8 +1,49 @@ +2002-06-13 Angus Leeming + + Fixes needed to compile with Compaq cxx 6.3. + * BufferView_pimpl.C: + * ColorHandler.C + * DepTable.C: + * LaTeX.C: + * buffer.C: + * converter.C: + * encoding.C: + * lyx_gui.C: + * lyx_main.C: + * lyxtextclasslist.C: + * minibuffer.C: + * sp_spell.[Ch]: + * tabular_funcs.C: + * vc-backend.C: + * vspace.C: + all c-library variables have been moved into namespace std. Wrap + using std::xyz declarations inside a #ifndef CXX_GLOBAL_CSTD block. + + * XFormsView.C: + * lyxlength.C: + * tabular-old.C: + * tabular.C: + Add a using std::abs declaration. + + * kbmap.h (modifier_pair): + * paragraph.h (InsetTable, InsetList): + * lyxfont.h (FontBits): + type definition made public. + + * bufferlist.C (emergencyWriteAll): the compiler complains that + there is more than one possible lyx::class_fun template to choose from. + I re-named the void specialisation as lyx::void_class_fun. + + * lyxfont.C (FontBits' operator==, operator!=): taken out of class. + + * tabular_funcs.[Ch]: move the #include of lstrings.h into the header + file for the templatised write_attribute method. + 2002-06-14 Allan Rae * paragraph.C (InsetIterator): fix #432 by fixing iterator selection. -2002-06-12 "Andrew Zabolotny" +2002-06-12 Andrew Zabolotny * kbmap.C (getiso): add support for cyrillic and greek diff --git a/src/ColorHandler.C b/src/ColorHandler.C index 6a1f333ab4..d789cdec0c 100644 --- a/src/ColorHandler.C +++ b/src/ColorHandler.C @@ -22,6 +22,10 @@ #include +#ifndef CXX_GLOBAL_CSTD +using std::pow; +#endif + using std::endl; diff --git a/src/DepTable.C b/src/DepTable.C index fecf867d8d..dd487fcd39 100644 --- a/src/DepTable.C +++ b/src/DepTable.C @@ -32,6 +32,10 @@ #include #include +#ifndef CXX_GLOBAL_CSTD +using std::time; +#endif + using std::make_pair; using std::ofstream; using std::ifstream; diff --git a/src/LaTeX.C b/src/LaTeX.C index 57256ab10d..b0b2578638 100644 --- a/src/LaTeX.C +++ b/src/LaTeX.C @@ -34,6 +34,10 @@ #include "support/path.h" #include // sscanf +#ifndef CXX_GLOBAL_CSTD +using std::sscanf; +#endif + using std::ifstream; using std::getline; using std::endl; diff --git a/src/XFormsView.C b/src/XFormsView.C index f83af35de4..91ed8fc81c 100644 --- a/src/XFormsView.C +++ b/src/XFormsView.C @@ -31,6 +31,7 @@ #include "lyxfunc.h" #include "BufferView.h" +using std::abs; using std::endl; //extern void AutoSave(BufferView *); diff --git a/src/buffer.C b/src/buffer.C index 1034398024..ee9720f195 100644 --- a/src/buffer.C +++ b/src/buffer.C @@ -110,6 +110,9 @@ #include #endif +#ifndef CXX_GLOBAL_CSTD +using std::pow; +#endif using std::ostream; using std::ofstream; diff --git a/src/bufferlist.C b/src/bufferlist.C index 3b69c1d071..adc51d8a9d 100644 --- a/src/bufferlist.C +++ b/src/bufferlist.C @@ -294,7 +294,7 @@ void BufferList::updateIncludedTeXfiles(string const & mastertmpdir) void BufferList::emergencyWriteAll() { for_each(bstore.begin(), bstore.end(), - lyx::class_fun(*this, &BufferList::emergencyWrite)); + lyx::void_class_fun(*this, &BufferList::emergencyWrite)); } diff --git a/src/converter.C b/src/converter.C index d192e26aca..cc76afe693 100644 --- a/src/converter.C +++ b/src/converter.C @@ -34,6 +34,10 @@ #include "support/path.h" #include "support/systemcall.h" +#ifndef CXX_GLOBAL_CSTD +using std::isdigit; +#endif + using std::vector; using std::queue; using std::endl; diff --git a/src/encoding.C b/src/encoding.C index 9d12136428..697adab956 100644 --- a/src/encoding.C +++ b/src/encoding.C @@ -17,6 +17,10 @@ #include "encoding.h" #include "debug.h" +#ifndef CXX_GLOBAL_CSTD +using std::strtol; +#endif + using std::endl; Encodings encodings; diff --git a/src/frontends/Alert.C b/src/frontends/Alert.C index e351d116bc..d85ba7c22d 100644 --- a/src/frontends/Alert.C +++ b/src/frontends/Alert.C @@ -17,6 +17,10 @@ #include +#ifndef CXX_GLOBAL_CSTD +using std::strerror; +#endif + using std::endl; using std::pair; using std::make_pair; diff --git a/src/frontends/ChangeLog b/src/frontends/ChangeLog index 81f8af38a8..d4d636ff64 100644 --- a/src/frontends/ChangeLog +++ b/src/frontends/ChangeLog @@ -1,3 +1,11 @@ +2002-06-13 Angus Leeming + + Fixes needed to compile with Compaq cxx 6.3. + * Alert.C: all c-library variables have been moved into namespace std. + Wrap using std::xyz declarations inside a #ifndef CXX_GLOBAL_CSTD block. + + * Toolbar.h (Pimpl): type definition made public. + 2002-04-08 Lars Gullik Bjønnes * Makefile.am (DIST_SUBDIRS): use this instead of EXTRA_DIST diff --git a/src/frontends/Toolbar.h b/src/frontends/Toolbar.h index 0f15083bc0..3ef7dcb85a 100644 --- a/src/frontends/Toolbar.h +++ b/src/frontends/Toolbar.h @@ -62,8 +62,9 @@ public: /// Erase the layout list void clearLayoutList(); -private: + /// Compaq cxx 6.5 requires this to be public struct Pimpl; +private: /// friend struct Toolbar::Pimpl; /// diff --git a/src/frontends/controllers/ChangeLog b/src/frontends/controllers/ChangeLog index 6014221a7b..34509ccf82 100644 --- a/src/frontends/controllers/ChangeLog +++ b/src/frontends/controllers/ChangeLog @@ -1,3 +1,8 @@ +2002-06-13 Angus Leeming + + Fixes needed to compile with Compaq cxx 6.3. + * ControlInset.tmpl: #include a couple of headers. + 2002-05-21 Angus Leeming * frnt_lang.C (getLanguageData): change a couple of N_() to _(). diff --git a/src/frontends/controllers/ControlInset.tmpl b/src/frontends/controllers/ControlInset.tmpl index 7b49633b0a..8f2f1482d1 100644 --- a/src/frontends/controllers/ControlInset.tmpl +++ b/src/frontends/controllers/ControlInset.tmpl @@ -11,8 +11,12 @@ */ #include "ControlInset.h" -#include "support/LAssert.h" +#include "ButtonControllerBase.h" +#include "ViewBase.h" +#include "buffer.h" #include "debug.h" +#include "LyXView.h" +#include "support/LAssert.h" template diff --git a/src/frontends/xforms/ChangeLog b/src/frontends/xforms/ChangeLog index ad7e208a94..355288492e 100644 --- a/src/frontends/xforms/ChangeLog +++ b/src/frontends/xforms/ChangeLog @@ -1,3 +1,12 @@ +2002-06-13 Angus Leeming + + Fixes needed to compile with Compaq cxx 6.3. + * Color.C: + * DropDown.C: + * FormThesaurus.C: + all c-library variables have been moved into namespace std. + Wrap using std::xyz declarations inside a #ifndef CXX_GLOBAL_CSTD block. + 2002-06-12 Jean-Marc Lasgouttes * xformsGImage.h: do not rely on FLIMAGE_H_LOCATION anymore diff --git a/src/frontends/xforms/Color.C b/src/frontends/xforms/Color.C index bbf9d57087..abf64c6375 100644 --- a/src/frontends/xforms/Color.C +++ b/src/frontends/xforms/Color.C @@ -17,6 +17,10 @@ #include // floor #include FORMS_H_LOCATION +#ifndef CXX_GLOBAL_CSTD +using std::floor; +#endif + using std::max; using std::min; diff --git a/src/frontends/xforms/DropDown.C b/src/frontends/xforms/DropDown.C index 4ed42f70ba..9a7ed8ce85 100644 --- a/src/frontends/xforms/DropDown.C +++ b/src/frontends/xforms/DropDown.C @@ -19,6 +19,10 @@ #include +#ifndef CXX_GLOBAL_CSTD +using std::isprint; +#endif + using std::vector; diff --git a/src/frontends/xforms/FormThesaurus.C b/src/frontends/xforms/FormThesaurus.C index 1bc58581a4..a45f10c6ff 100644 --- a/src/frontends/xforms/FormThesaurus.C +++ b/src/frontends/xforms/FormThesaurus.C @@ -21,6 +21,10 @@ #include "form_thesaurus.h" #include "debug.h" +#ifndef CXX_GLOBAL_CSTD +using std::isupper; +using std::islower; +#endif using std::vector; diff --git a/src/graphics/ChangeLog b/src/graphics/ChangeLog index fae2d90497..d7d5f3ca33 100644 --- a/src/graphics/ChangeLog +++ b/src/graphics/ChangeLog @@ -1,3 +1,12 @@ +2002-06-13 Angus Leeming + + Fixes needed to compile with Compaq cxx 6.3. + * GraphicsConverter.h: forward declare class ConvProcess. + + * GraphicsImageXPM.C: + all c-library variables have been moved into namespace std. + Wrap using std::xyz declarations inside a #ifndef CXX_GLOBAL_CSTD block. + 2002-06-10 Herbert Voss * GraphicsImageXPM.C (convertTo7chars): get another special color diff --git a/src/graphics/GraphicsConverter.h b/src/graphics/GraphicsConverter.h index 5ceeb27d7a..e2f373e1ac 100644 --- a/src/graphics/GraphicsConverter.h +++ b/src/graphics/GraphicsConverter.h @@ -33,6 +33,8 @@ namespace grfx { +class ConvProcess; + class GConverter : boost::noncopyable { public: diff --git a/src/graphics/GraphicsImageXPM.C b/src/graphics/GraphicsImageXPM.C index d5fe0b39b1..301769d44f 100644 --- a/src/graphics/GraphicsImageXPM.C +++ b/src/graphics/GraphicsImageXPM.C @@ -25,6 +25,14 @@ #include // cos, sin #include // malloc, free +#ifndef CXX_GLOBAL_CSTD +using std::cos; +using std::sin; +using std::malloc; +using std::strcpy; +using std::strlen; +#endif + namespace grfx { /// Access to this class is through this static method. diff --git a/src/insets/ChangeLog b/src/insets/ChangeLog index ab952626b8..c5cf71be2f 100644 --- a/src/insets/ChangeLog +++ b/src/insets/ChangeLog @@ -1,3 +1,14 @@ +2002-06-14 Angus Leeming + + * inseetexternal.C: remove the using std::difftime declaration. + +2002-06-13 Angus Leeming + + Fixes needed to compile with Compaq cxx 6.3. + * insetexternal.C: + all c-library variables have been moved into namespace std. + Wrap using std::xyz declarations inside a #ifndef CXX_GLOBAL_CSTD block. + 2002-06-12 Vitaly Lipatov * insetquotes.C (draw): fix drawing of double quotes diff --git a/src/lyx_gui.C b/src/lyx_gui.C index ef15d73f63..f13356dfc4 100644 --- a/src/lyx_gui.C +++ b/src/lyx_gui.C @@ -42,6 +42,10 @@ #include #include +#ifndef CXX_GLOBAL_CSTD +using std::exit; +#endif + using std::endl; extern LyXServer * lyxserver; diff --git a/src/lyx_main.C b/src/lyx_main.C index 8061a2e6b7..15dbfeec45 100644 --- a/src/lyx_main.C +++ b/src/lyx_main.C @@ -51,7 +51,9 @@ using std::endl; #ifndef CXX_GLOBAL_CSTD +using std::exit; using std::signal; +using std::system; #endif extern void LoadLyXFile(string const &); diff --git a/src/lyxfont.C b/src/lyxfont.C index 4958015021..b88e5c1a9e 100644 --- a/src/lyxfont.C +++ b/src/lyxfont.C @@ -139,23 +139,18 @@ LyXFont::FontBits LyXFont::ignore = { IGNORE }; -bool LyXFont::FontBits::operator==(LyXFont::FontBits const & fb1) const +bool operator==(LyXFont::FontBits const & lhs, + LyXFont::FontBits const & rhs) { - return fb1.family == family && - fb1.series == series && - fb1.shape == shape && - fb1.size == size && - fb1.color == color && - fb1.emph == emph && - fb1.underbar == underbar && - fb1.noun == noun && - fb1.number == number; -} - - -bool LyXFont::FontBits::operator!=(LyXFont::FontBits const & fb1) const -{ - return !(fb1 == *this); + return lhs.family == rhs.family && + lhs.series == rhs.series && + lhs.shape == rhs.shape && + lhs.size == rhs.size && + lhs.color == rhs.color && + lhs.emph == rhs.emph && + lhs.underbar == rhs.underbar && + lhs.noun == rhs.noun && + lhs.number == rhs.number; } diff --git a/src/lyxfont.h b/src/lyxfont.h index ad9d3f276c..3cb1edd795 100644 --- a/src/lyxfont.h +++ b/src/lyxfont.h @@ -326,13 +326,11 @@ public: /// Converts logical attributes to concrete shape attribute LyXFont::FONT_SHAPE realShape() const; -private: - /// + + /** Compaq cxx 6.5 requires that the definition be public so that + it can compile operator==() + */ struct FontBits { - /// - bool operator==(FontBits const & fb1) const; - /// - bool operator!=(FontBits const & fb1) const; /// FONT_FAMILY family; /// @@ -352,6 +350,7 @@ private: /// FONT_MISC_STATE number; }; +private: /// FontBits bits; @@ -435,6 +434,14 @@ bool LyXFont::isSymbolFont() const /// std::ostream & operator<<(std::ostream &, LyXFont::FONT_MISC_STATE); +bool operator==(LyXFont::FontBits const & lhs, LyXFont::FontBits const & rhs); + +inline +bool operator!=(LyXFont::FontBits const & lhs, LyXFont::FontBits const & rhs) +{ + return !(lhs == rhs); +} + /// inline bool operator==(LyXFont const & font1, LyXFont const & font2) @@ -449,4 +456,6 @@ bool operator!=(LyXFont const & font1, LyXFont const & font2) { return !(font1 == font2); } + + #endif diff --git a/src/lyxlength.C b/src/lyxlength.C index 30b54e0b8d..2a0b2fa0b5 100644 --- a/src/lyxlength.C +++ b/src/lyxlength.C @@ -24,6 +24,7 @@ #include +using std::abs; LyXLength::LyXLength() : val_(0), unit_(LyXLength::PT) diff --git a/src/lyxtextclasslist.C b/src/lyxtextclasslist.C index 6050c266cb..ad39c659a2 100644 --- a/src/lyxtextclasslist.C +++ b/src/lyxtextclasslist.C @@ -29,6 +29,10 @@ #include +#ifndef CXX_GLOBAL_CSTD +using std::exit; +#endif + using lyx::textclass_type; using std::pair; using std::make_pair; diff --git a/src/mathed/ChangeLog b/src/mathed/ChangeLog index 157e56c295..6bbeeb3330 100644 --- a/src/mathed/ChangeLog +++ b/src/mathed/ChangeLog @@ -1,3 +1,10 @@ +2002-06-13 Angus Leeming + + Fixes needed to compile with Compaq cxx 6.3. + * math_charinset.C: + all c-library variables have been moved into namespace std. + Wrap using std::xyz declarations inside a #ifndef CXX_GLOBAL_CSTD block. + 2002-05-31 Dekel Tsur * math_hullinset.C (ams): Do a real check. diff --git a/src/mathed/math_charinset.C b/src/mathed/math_charinset.C index 71a3609ccf..dbc8d89283 100644 --- a/src/mathed/math_charinset.C +++ b/src/mathed/math_charinset.C @@ -23,6 +23,7 @@ using std::ostream; using std::endl; #ifndef CXX_GLOBAL_CSTD +using std::isalpha; using std::strchr; #endif diff --git a/src/minibuffer.C b/src/minibuffer.C index 92a307dfc7..5048ac95f0 100644 --- a/src/minibuffer.C +++ b/src/minibuffer.C @@ -35,6 +35,10 @@ #include +#ifndef CXX_GLOBAL_CSTD +using std::isprint; +#endif + using SigC::slot; using std::vector; using std::back_inserter; diff --git a/src/paragraph.h b/src/paragraph.h index f6e437064a..536ba89d3d 100644 --- a/src/paragraph.h +++ b/src/paragraph.h @@ -342,6 +342,10 @@ public: private: /// string layout_; +public: + /** Both these definitions must be made public to keep Compaq cxx 6.5 + * happy. + */ /// struct InsetTable { /// @@ -354,6 +358,7 @@ private: /// typedef std::vector InsetList; +private: /// InsetList insetlist; public: diff --git a/src/sp_ispell.h b/src/sp_ispell.h index 62a5958627..66cb904751 100644 --- a/src/sp_ispell.h +++ b/src/sp_ispell.h @@ -7,6 +7,9 @@ class BufferParams; +#ifndef CXX_GLOBAL_CSTD +using std::FILE; +#endif class ISpell : public SpellBase { diff --git a/src/sp_spell.C b/src/sp_spell.C index a47903f650..b5b47d907a 100644 --- a/src/sp_spell.C +++ b/src/sp_spell.C @@ -53,6 +53,13 @@ #include "encoding.h" #include "sp_ispell.h" +#ifndef CXX_GLOBAL_CSTD +using std::strcpy; +using std::strlen; +using std::strpbrk; +using std::strstr; +#endif + using std::endl; namespace { diff --git a/src/support/ChangeLog b/src/support/ChangeLog index b8b6d6cddf..97189292b2 100644 --- a/src/support/ChangeLog +++ b/src/support/ChangeLog @@ -1,3 +1,23 @@ +2002-06-13 Angus Leeming + + Fixes needed to compile with Compaq cxx 6.3. + * lyxfunctional.h: rename lyx::class_fun(C & c, void(C::*f)(A)) as + lyx::void_class_fun to avoid compiler problems with Compaq cxx 6.5: + more than one instance of overloaded function "lyx::class_fun" matches + the argument list. + + * filetools.C: + * lstrings.C: + * snprintf.h: + * systemcall.C: + * utility.h: + all c-library variables have been moved into namespace std. + Wrap using std::xyz declarations inside a #ifndef CXX_GLOBAL_CSTD block. + + * kill.C: rename signal.h as csignal. + + * putenv.C: rename stdlib.h as cstdlib + 2002-05-03 Herbert Voss * filetools.C (getExtFromContents): only print the first 60 chars of diff --git a/src/support/filetools.C b/src/support/filetools.C index 38fbfa2c40..f40995e764 100644 --- a/src/support/filetools.C +++ b/src/support/filetools.C @@ -16,21 +16,10 @@ #include -#include - -#include -#include - -#include "Lsstream.h" - #ifdef __GNUG__ #pragma implementation "filetools.h" #endif -#include -#include -#include -#include #include "debug.h" #include "support/lstrings.h" #include "support/systemcall.h" @@ -44,6 +33,18 @@ #include "lyxlib.h" #include "os.h" +#include "Lsstream.h" + +#include +#include +#include +#include +#include + +#include +#include + + // Which part of this is still necessary? (JMarc). #if HAVE_DIRENT_H # include @@ -62,6 +63,12 @@ # endif #endif +#ifndef CXX_GLOBAL_CSTD +using std::fgetc; +using std::isalpha; +using std::isalnum; +#endif + using std::make_pair; using std::pair; using std::endl; diff --git a/src/support/kill.C b/src/support/kill.C index d121843cb4..4edad1aed0 100644 --- a/src/support/kill.C +++ b/src/support/kill.C @@ -1,7 +1,7 @@ #include #include -#include +#include #include "lyxlib.h" diff --git a/src/support/lstrings.C b/src/support/lstrings.C index 39594d53f1..20eb7517a6 100644 --- a/src/support/lstrings.C +++ b/src/support/lstrings.C @@ -30,9 +30,11 @@ using std::transform; using std::vector; #ifndef CXX_GLOBAL_CSTD +using std::atof; +using std::isdigit; +using std::strlen; using std::tolower; using std::toupper; -using std::strlen; #endif diff --git a/src/support/lyxfunctional.h b/src/support/lyxfunctional.h index af2107413d..2e52337a26 100644 --- a/src/support/lyxfunctional.h +++ b/src/support/lyxfunctional.h @@ -60,7 +60,7 @@ class_fun(C & c, R(C::*f)(A)) template void_class_fun_t -class_fun(C & c, void(C::*f)(A)) +void_class_fun(C & c, void(C::*f)(A)) { return void_class_fun_t(c, f); } diff --git a/src/support/putenv.C b/src/support/putenv.C index a54c0dff3b..feb4407552 100644 --- a/src/support/putenv.C +++ b/src/support/putenv.C @@ -1,6 +1,6 @@ #include -#include +#include #include "lyxlib.h" int lyx::putenv(char const * str) diff --git a/src/support/snprintf.h b/src/support/snprintf.h index aaad68ae4d..092355169c 100644 --- a/src/support/snprintf.h +++ b/src/support/snprintf.h @@ -8,6 +8,11 @@ extern "C" { #endif +#ifndef CXX_GLOBAL_CSTD +using std::size_t; +using std::va_list; +#endif + #if defined(HAVE_DECL_SNPRINTF) || defined(HAVE_DECL_VSNPRINTF) #include #endif diff --git a/src/support/systemcall.C b/src/support/systemcall.C index 2372c2fd45..44f613214d 100644 --- a/src/support/systemcall.C +++ b/src/support/systemcall.C @@ -27,6 +27,9 @@ #include //for ::system +#ifndef CXX_GLOBAL_CSTD +using std::system; +#endif #if 0 Systemcall::Systemcall(Starttype how, string const & what) diff --git a/src/support/utility.h b/src/support/utility.h index 99d94dcc2a..49d8179121 100644 --- a/src/support/utility.h +++ b/src/support/utility.h @@ -30,6 +30,10 @@ //#include // for size_t //#include // for std::pair +#ifndef CXX_GLOBAL_CSTD +using std::free; +#endif + namespace lyx { // checked_delete() and checked_array_delete() -----------------------------// @@ -41,7 +45,7 @@ namespace lyx { BOOST_STATIC_ASSERT( sizeof(T) != 0 ); // assert type complete at point // of instantiation - free(x); + ::free(x); } } // namespace boost diff --git a/src/tabular-old.C b/src/tabular-old.C index 1f7d9f576d..796f47b650 100644 --- a/src/tabular-old.C +++ b/src/tabular-old.C @@ -19,6 +19,7 @@ #include "support/lstrings.h" #include "support/textutils.h" +using std::abs; using std::istream; using std::getline; using std::endl; diff --git a/src/tabular.C b/src/tabular.C index fbeae9e5c5..1c0c080978 100644 --- a/src/tabular.C +++ b/src/tabular.C @@ -40,6 +40,7 @@ #include #include +using std::abs; using std::ostream; using std::istream; using std::getline; diff --git a/src/tabular_funcs.C b/src/tabular_funcs.C index dd1a2a01c5..5bcbdb56c6 100644 --- a/src/tabular_funcs.C +++ b/src/tabular_funcs.C @@ -18,9 +18,12 @@ #include "tabular_funcs.h" -#include "support/lstrings.h" #include "support/LIstream.h" +#ifndef CXX_GLOBAL_CSTD +using std::strlen; +#endif + using std::istream; using std::getline; diff --git a/src/tabular_funcs.h b/src/tabular_funcs.h index 5db625f438..5760d2261d 100644 --- a/src/tabular_funcs.h +++ b/src/tabular_funcs.h @@ -20,6 +20,7 @@ #include "LString.h" #include "tabular.h" +#include "support/lstrings.h" // for tostr #include diff --git a/src/vc-backend.C b/src/vc-backend.C index c4336d48e7..61c59fc3b3 100644 --- a/src/vc-backend.C +++ b/src/vc-backend.C @@ -21,6 +21,11 @@ #include +#ifndef CXX_GLOBAL_CSTD +using std::asctime; +using std::gmtime; +#endif + using std::endl; using std::ifstream; using std::getline; diff --git a/src/vspace.C b/src/vspace.C index 6b4d25a7ed..18772db249 100644 --- a/src/vspace.C +++ b/src/vspace.C @@ -25,6 +25,9 @@ #include +#ifndef CXX_GLOBAL_CSTD +using std::sscanf; +#endif namespace {