Work around MSVC warning

The statement
	if (pos < from + lyxrc.completion_minlength)
triggers a signed vs. unsigned warning. I don't know why this happens, it
could be a MSVC bug, or related to LLP64 (windows) vs. LP64 (unix)
programming model, or the C++ standard might be ambigous in the section
defining the "usual arithmetic conversions". However, using a temporary
variable is safe and works on all compilers.
This commit is contained in:
Georg Baum 2014-06-26 21:05:40 +02:00 committed by Jean-Marc
parent df0b34017e
commit 9ebc325be3
2 changed files with 11 additions and 2 deletions

View File

@ -3866,7 +3866,16 @@ void Paragraph::collectWords()
continue;
pos_type from = pos;
locateWord(from, pos, WHOLE_WORD);
if (pos < from + lyxrc.completion_minlength)
// Work around MSVC warning: The statement
// if (pos < from + lyxrc.completion_minlength)
// triggers a signed vs. unsigned warning.
// I don't know why this happens, it could be a MSVC bug, or
// related to LLP64 (windows) vs. LP64 (unix) programming
// model, or the C++ standard might be ambigous in the section
// defining the "usual arithmetic conversions". However, using
// a temporary variable is safe and works on all compilers.
pos_type const endpos = from + lyxrc.completion_minlength;
if (pos < endpos)
continue;
FontList::const_iterator cit = d->fontlist_.fontIterator(from);
if (cit == d->fontlist_.end())

View File

@ -217,7 +217,7 @@ What's new
* BUILD/INSTALLATION
- Fix a couple of compiler warnings.
- Fix some compiler warnings.
- Fix a few minor issues in the RPM spec file template (bug 9349).