Commit Graph

33195 Commits

Author SHA1 Message Date
Jean-Marc Lasgouttes
8bab23384a Fix the last clang warnings about overloaded virtual methods
This patch fixes a series of warnings like:
{{{
In file included from ../../master/src/mathed/InsetMathBoldSymbol.cpp:13:
In file included from ../../master/src/mathed/InsetMathBoldSymbol.h:15:
../../master/src/mathed/InsetMathNest.h:37:7: warning: 'lyx::InsetMathNest::metrics' hides overloaded virtual function [-Woverloaded-virtual]
        void metrics(MetricsInfo const & mi) const;
             ^
../../master/src/insets/Inset.h:186:15: note: hidden overloaded virtual function 'lyx::Inset::metrics' declared here: different number of parameters
      (2 vs 1)
        virtual void metrics(MetricsInfo & mi, Dimension & dim) const = 0;
                     ^
}}}
For a description of the problem, see for example:
http://stackoverflow.com/questions/18515183/c-overloaded-virtual-function-warning-by-clang

3 different strategies have been used:
 * in frontend, some functions have been renamed.
 * in InsetMath.h, Inset::write has been explicitly imported too
 * in InsetMathNest.h, since a comment said that hiding Inset::metrics is intended, a special trick has bee used to silence the warning.
2014-12-22 11:02:45 +01:00
Scott Kostyshak
625cea1528 Whitespace 2014-12-21 19:01:52 -05:00
Georg Baum
ed3b3afbe9 Make Converter class thread-safe
Again, this is used in a global list shared by all threads
2014-12-21 22:05:15 +01:00
Georg Baum
0af021878b Make Format class almost thread-safe
This is needed since all formats are stored in a global list which is shared
between threads, but never modfified except from the main thread.
The only missing bit is extension_list_, which is not so easy to do.
2014-12-21 21:40:25 +01:00
Georg Baum
90b1f084bf Improve C++11 support
If we compile in C++11 mode, do not use the boost replacements for bind,
functional and shared_ptr. regex is excluded, since it misses match_partial, and
gcc does not provide a usable one in versions less than 4.9.0.
I also removed the #define for match_partial, since this is dangerous. Now you
get a compile error instead of subtle runtime differences.
2014-12-21 20:22:16 +01:00
Juergen Spitzmueller
c9609fe56a Do not warn about changed modules when changing modules.
Part of #9356
Also fixes #9365
2014-12-21 19:10:13 +01:00
Georg Baum
c4613963fa Add missing using declarations
This fixes using std::tr1::regex for non-MSVC compilers.
2014-12-21 19:05:00 +01:00
Georg Baum
0842aa06e4 Do not use tr1 with libc++
clang defines __GNUC__ but libc++ does not have tr1, so we either need to use
boost, or std and compile in c++11 mode.
2014-12-21 18:22:33 +01:00
Georg Baum
158b9a0e55 ::readlink() needs unistd.h
this is included in some gcc headers, but not in c++11 mode, that is the
reason why we did not get a compile error so far.
2014-12-21 18:13:33 +01:00
Georg Baum
7796ad3a36 Improve llvm libc++ detection
The old detection did only work if CFLAGS contained -std=c++11, since ciso646
was only included for __cplusplus > 199711.
Thanks to Koernel for the cmake part.
2014-12-21 17:26:21 +01:00
Stephan Witt
57941c83ea add Mavericks and Yosemite SDKs 2014-12-21 15:58:34 +01:00
Juergen Spitzmueller
e34d7a269d de.po 2014-12-21 15:11:36 +01:00
Juergen Spitzmueller
9b3e47fd87 Output package options before loading any package.
Fixes: #9355
2014-12-21 12:10:06 +01:00
Juergen Spitzmueller
740d9162c0 When switching classes, warn user about all unapplied document changes
Currently, this is limited to modules.

Part of #9356.
2014-12-21 11:49:08 +01:00
Juergen Spitzmueller
276fa4825d Do not silently dismiss unapplied document changes when adding module
Part of #9356
2014-12-21 11:47:59 +01:00
Juergen Spitzmueller
41c35476e5 Fix initialization order 2014-12-21 10:13:56 +01:00
Scott Kostyshak
15ae3eb85c Initialize recently added forceownlines_ bool
This adds on to the fix for #8875 (a25569eb).
2014-12-20 15:05:20 -05:00
Scott Kostyshak
6da7ee1be1 Whitespace 2014-12-20 15:03:40 -05:00
Kornel Benko
98d063e9be Cmake build: Check for string COW by checking for library, not compiler
Changed according to automake behaviour, see 385f3e8abd
2014-12-19 12:32:14 +01:00
Jean-Marc Lasgouttes
385f3e8abd Check for string COW by checking for library, not compiler
Note in particular that clang++ uses libstdc++ (GNU) by default, and not libc++.
Therefore, it suffers from the string COW bug too.
2014-12-19 08:54:07 +01:00
Jean-Marc Lasgouttes
dd2be1777f Detect whether the C++ compiler is clang
This does not have a real effect for now.
2014-12-17 12:11:10 +01:00
Uwe Stöhr
58dcc4f693 ar.po: updates from Hatim for master 2014-12-15 02:07:15 +01:00
Juergen Spitzmueller
021caeeb86 We cannot convert Flex to Layout by ObsoletedBy 2014-12-10 08:15:51 +01:00
Georg Baum
d553938c92 Improve and unify error messages
Now the errors given for an unknown layout in copystyle and obsoletedby provide
the same information.
2014-12-09 21:20:56 +01:00
Kornel Benko
df19428810 sk.po update 2014-12-09 20:09:06 +01:00
Georg Baum
c6b98a504f Make Encoding class thread-safe
Now all const methods may be called without additional locking.
This is assumed by the threaded LaTeX export, which always useses a globally
unique instance for each encoding.
2014-12-08 22:25:40 +01:00
Georg Baum
364e0f72c4 Fix invalid iterator access 2014-12-08 21:29:25 +01:00
Kornel Benko
edf22ba723 Cmake build: Detect clang and adapt definition of STD_STRING_USES_COW. 2014-12-08 17:43:05 +01:00
Juergen Spitzmueller
1df5d28df5 Update the spec file template
Patch by user aluchko in #9349

Fixes: #9349
2014-12-08 13:15:06 +01:00
Jean-Marc Lasgouttes
0bdfca2c6e \\subfloat captions are moving arguments
Therefore insets should be protected in these captions.

Fixes bug: #9346.
2014-12-08 09:43:49 +01:00
Juergen Spitzmueller
43c0149796 Update layouts to current format 2014-12-08 09:24:44 +01:00
Juergen Spitzmueller
bedccc7b98 Use ObsoletedBy in fixme and todonotes modules. 2014-12-08 09:08:46 +01:00
Juergen Spitzmueller
cfeddb9293 Add ObsoletedBy tag to InsetLayout
Fixes: #9000.
2014-12-08 09:08:45 +01:00
Juergen Spitzmueller
f47361c4db de.po: Correct translation 2014-12-08 08:01:40 +01:00
Georg Baum
5b336954d7 Try to fix compilation on cygwin 2014-12-07 20:43:47 +01:00
Georg Baum
0b30253f2b Fix compilation without trivstring 2014-12-07 20:39:31 +01:00
Georg Baum
c86f299a50 Encapsulate Converter class
Now members are not directly accessible anymore.
2014-12-07 18:35:28 +01:00
Georg Baum
25344de51d Make Language and Encoding threadsafe
Read-only access to these classes is now threadsafe, with one exception:
The encoding neds to be already initialized (i.e. init() must not be called).
This makes bug 9336 unreproducable on my machine, although it is not completely
fixed yet.
2014-12-07 18:26:44 +01:00
Georg Baum
d5aaee1f6b Whitespace 2014-12-07 17:29:12 +01:00
Juergen Spitzmueller
0a18bedf4b de.gmo 2014-12-07 14:52:59 +01:00
Juergen Spitzmueller
847307c864 de.po: update 2014-12-07 14:38:32 +01:00
Georg Baum
83bee109db Make trivstring class ready for use
The interface is now 100% unit tested, and the typedefs depend on the new
STD_STRING_USES_COW configuration variable. The only missing bit is to detect
clang and disable STD_STRING_USES_COW for clang.
2014-12-07 13:14:17 +01:00
Georg Baum
46f7b578b2 First version of trivstring class (bug #9336)
As discused on the list. This is not used yet, but it is intended to provide
thread-safe read-access without the need for synchronization if the used STL
implementation does not provide it for std::basic_string. This is the case for
all implementations using copy-on-write.
2014-12-07 13:14:17 +01:00
Juergen Spitzmueller
2614d5a386 Use appropriate (cheaper) conversion. 2014-12-07 13:06:29 +01:00
Juergen Spitzmueller
c4bb79dd8c de.po: update 2014-12-06 09:59:44 +01:00
Uwe Stöhr
0d63bdfc16 tex2lyx/text.cpp: bring back a comment as discussed 2014-12-04 00:57:14 +01:00
Uwe Stöhr
496647a8d3 IEEEtran templates: fix language package
according to the IEEE writing guidelines one must not use babel otherwise one would violate the caption formatting rule
This fixes bug #9350.
2014-12-03 23:35:04 +01:00
Uwe Stöhr
a6ac7be84c IEEEtran templates: fix language package 2014-12-03 23:33:02 +01:00
Georg Baum
49af9db623 Remove unneeded typedef
docstring is already defined in strfwd.h (which is included from docstring.h).
There are only two possible cases:
Either the typedef in docstring.h defines an identical type (then it is not
needed), or it defines a different type (then it generates a compilation error)
=> it is not needed.
2014-12-03 21:08:13 +01:00
Richard Heck
1a3821fd88 Fix XHTML export for new "in title" footnotes. Builds on a patch
by JMarc.
2014-12-02 11:03:26 -05:00