diff options
| -rw-r--r-- | lexers/LexCaml.cxx | 4 | ||||
| -rw-r--r-- | lexers/LexPerl.cxx | 12 | ||||
| -rw-r--r-- | lexers/LexSML.cxx | 4 | 
3 files changed, 15 insertions, 5 deletions
| diff --git a/lexers/LexCaml.cxx b/lexers/LexCaml.cxx index 038068a7b..1339b5dcc 100644 --- a/lexers/LexCaml.cxx +++ b/lexers/LexCaml.cxx @@ -37,6 +37,10 @@  #include "CharacterSet.h"  #include "LexerModule.h" +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wcomma" +#endif +  //	Since the Microsoft __iscsym[f] funcs are not ANSI...  inline int  iscaml(int c) {return isalnum(c) || c == '_';}  inline int iscamlf(int c) {return isalpha(c) || c == '_';} diff --git a/lexers/LexPerl.cxx b/lexers/LexPerl.cxx index 1ea6bd589..34f525586 100644 --- a/lexers/LexPerl.cxx +++ b/lexers/LexPerl.cxx @@ -121,8 +121,8 @@ static int disambiguateBareword(LexAccessor &styler, Sci_PositionU bk, Sci_Posit  	// if ch isn't one of '[{(,' we can skip the test  	if ((ch == '{' || ch == '(' || ch == '['|| ch == ',')  	        && fw < endPos) { -		while (ch = static_cast<unsigned char>(styler.SafeGetCharAt(fw)), -		        IsASpaceOrTab(ch) && fw < endPos) { +		while (IsASpaceOrTab(ch = static_cast<unsigned char>(styler.SafeGetCharAt(fw))) +		        && fw < endPos) {  			fw++;  		}  		if ((ch == '}' && brace) @@ -137,10 +137,12 @@ static int disambiguateBareword(LexAccessor &styler, Sci_PositionU bk, Sci_Posit  static void skipWhitespaceComment(LexAccessor &styler, Sci_PositionU &p) {  	// when backtracking, we need to skip whitespace and comments -	int style; -	while ((p > 0) && (style = styler.StyleAt(p), -	        style == SCE_PL_DEFAULT || style == SCE_PL_COMMENTLINE)) +	while (p > 0) { +		const int style = styler.StyleAt(p); +		if (style != SCE_PL_DEFAULT && style != SCE_PL_COMMENTLINE) +			break;  		p--; +	}  }  static int findPrevLexeme(LexAccessor &styler, Sci_PositionU &bk, int &style) { diff --git a/lexers/LexSML.cxx b/lexers/LexSML.cxx index 1cb00f91d..ed67300d2 100644 --- a/lexers/LexSML.cxx +++ b/lexers/LexSML.cxx @@ -24,6 +24,10 @@  #include "CharacterSet.h"  #include "LexerModule.h" +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wcomma" +#endif +  inline int  issml(int c) {return isalnum(c) || c == '_';}  inline int issmlf(int c) {return isalpha(c) || c == '_';}  inline int issmld(int c) {return isdigit(c) || c == '_';} | 
