diff src/syntax.c @ 18814:7e7ec935e7c8 v8.1.2395

patch 8.1.2395: using old C style comments Commit: https://github.com/vim/vim/commit/0d6f5d9740dbad1b0207f3ab257de806169dd905 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Dec 5 21:33:15 2019 +0100 patch 8.1.2395: using old C style comments Problem: Using old C style comments. Solution: Use // comments where appropriate.
author Bram Moolenaar <Bram@vim.org>
date Thu, 05 Dec 2019 21:45:04 +0100
parents 4cf69f8d1ec6
children 94eda51ba9ba
line wrap: on
line diff
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -15,16 +15,16 @@
 
 #if defined(FEAT_SYN_HL) || defined(PROTO)
 
-#define SYN_NAMELEN	50		/* maximum length of a syntax name */
-
-/* different types of offsets that are possible */
-#define SPO_MS_OFF	0	/* match  start offset */
-#define SPO_ME_OFF	1	/* match  end	offset */
-#define SPO_HS_OFF	2	/* highl. start offset */
-#define SPO_HE_OFF	3	/* highl. end	offset */
-#define SPO_RS_OFF	4	/* region start offset */
-#define SPO_RE_OFF	5	/* region end	offset */
-#define SPO_LC_OFF	6	/* leading context offset */
+#define SYN_NAMELEN	50		// maximum length of a syntax name
+
+// different types of offsets that are possible
+#define SPO_MS_OFF	0	// match  start offset
+#define SPO_ME_OFF	1	// match  end	offset
+#define SPO_HS_OFF	2	// highl. start offset
+#define SPO_HE_OFF	3	// highl. end	offset
+#define SPO_RS_OFF	4	// region start offset
+#define SPO_RE_OFF	5	// region end	offset
+#define SPO_LC_OFF	6	// leading context offset
 #define SPO_COUNT	7
 
 static char *(spo_name_tab[SPO_COUNT]) =
@@ -45,62 +45,61 @@ static char *(spo_name_tab[SPO_COUNT]) =
  */
 typedef struct syn_pattern
 {
-    char	 sp_type;		/* see SPTYPE_ defines below */
-    char	 sp_syncing;		/* this item used for syncing */
-    short	 sp_syn_match_id;	/* highlight group ID of pattern */
-    short	 sp_off_flags;		/* see below */
-    int		 sp_offsets[SPO_COUNT];	/* offsets */
-    int		 sp_flags;		/* see HL_ defines below */
+    char	 sp_type;		// see SPTYPE_ defines below
+    char	 sp_syncing;		// this item used for syncing
+    short	 sp_syn_match_id;	// highlight group ID of pattern
+    short	 sp_off_flags;		// see below
+    int		 sp_offsets[SPO_COUNT];	// offsets
+    int		 sp_flags;		// see HL_ defines below
 #ifdef FEAT_CONCEAL
-    int		 sp_cchar;		/* conceal substitute character */
+    int		 sp_cchar;		// conceal substitute character
 #endif
-    int		 sp_ic;			/* ignore-case flag for sp_prog */
-    int		 sp_sync_idx;		/* sync item index (syncing only) */
-    int		 sp_line_id;		/* ID of last line where tried */
-    int		 sp_startcol;		/* next match in sp_line_id line */
-    short	*sp_cont_list;		/* cont. group IDs, if non-zero */
-    short	*sp_next_list;		/* next group IDs, if non-zero */
-    struct sp_syn sp_syn;		/* struct passed to in_id_list() */
-    char_u	*sp_pattern;		/* regexp to match, pattern */
-    regprog_T	*sp_prog;		/* regexp to match, program */
+    int		 sp_ic;			// ignore-case flag for sp_prog
+    int		 sp_sync_idx;		// sync item index (syncing only)
+    int		 sp_line_id;		// ID of last line where tried
+    int		 sp_startcol;		// next match in sp_line_id line
+    short	*sp_cont_list;		// cont. group IDs, if non-zero
+    short	*sp_next_list;		// next group IDs, if non-zero
+    struct sp_syn sp_syn;		// struct passed to in_id_list()
+    char_u	*sp_pattern;		// regexp to match, pattern
+    regprog_T	*sp_prog;		// regexp to match, program
 #ifdef FEAT_PROFILE
     syn_time_T	 sp_time;
 #endif
 } synpat_T;
 
-/* The sp_off_flags are computed like this:
- * offset from the start of the matched text: (1 << SPO_XX_OFF)
- * offset from the end	 of the matched text: (1 << (SPO_XX_OFF + SPO_COUNT))
- * When both are present, only one is used.
- */
-
-#define SPTYPE_MATCH	1	/* match keyword with this group ID */
-#define SPTYPE_START	2	/* match a regexp, start of item */
-#define SPTYPE_END	3	/* match a regexp, end of item */
-#define SPTYPE_SKIP	4	/* match a regexp, skip within item */
+// The sp_off_flags are computed like this:
+// offset from the start of the matched text: (1 << SPO_XX_OFF)
+// offset from the end	 of the matched text: (1 << (SPO_XX_OFF + SPO_COUNT))
+// When both are present, only one is used.
+
+#define SPTYPE_MATCH	1	// match keyword with this group ID
+#define SPTYPE_START	2	// match a regexp, start of item
+#define SPTYPE_END	3	// match a regexp, end of item
+#define SPTYPE_SKIP	4	// match a regexp, skip within item
 
 
 #define SYN_ITEMS(buf)	((synpat_T *)((buf)->b_syn_patterns.ga_data))
 
-#define NONE_IDX	-2	/* value of sp_sync_idx for "NONE" */
+#define NONE_IDX	-2	// value of sp_sync_idx for "NONE"
 
 /*
  * Flags for b_syn_sync_flags:
  */
-#define SF_CCOMMENT	0x01	/* sync on a C-style comment */
-#define SF_MATCH	0x02	/* sync by matching a pattern */
+#define SF_CCOMMENT	0x01	// sync on a C-style comment
+#define SF_MATCH	0x02	// sync by matching a pattern
 
 #define SYN_STATE_P(ssp)    ((bufstate_T *)((ssp)->ga_data))
 
-#define MAXKEYWLEN	80	    /* maximum length of a keyword */
+#define MAXKEYWLEN	80	    // maximum length of a keyword
 
 /*
  * The attributes of the syntax item that has been recognized.
  */
-static int current_attr = 0;	    /* attr of current syntax word */
+static int current_attr = 0;	    // attr of current syntax word
 #ifdef FEAT_EVAL
-static int current_id = 0;	    /* ID of current char for syn_get_id() */
-static int current_trans_id = 0;    /* idem, transparency removed */
+static int current_id = 0;	    // ID of current char for syn_get_id()
+static int current_trans_id = 0;    // idem, transparency removed
 #endif
 #ifdef FEAT_CONCEAL
 static int current_flags = 0;
@@ -110,17 +109,17 @@ static int current_sub_char = 0;
 
 typedef struct syn_cluster_S
 {
-    char_u	    *scl_name;	    /* syntax cluster name */
-    char_u	    *scl_name_u;    /* uppercase of scl_name */
-    short	    *scl_list;	    /* IDs in this syntax cluster */
+    char_u	    *scl_name;	    // syntax cluster name
+    char_u	    *scl_name_u;    // uppercase of scl_name
+    short	    *scl_list;	    // IDs in this syntax cluster
 } syn_cluster_T;
 
 /*
  * Methods of combining two clusters
  */
-#define CLUSTER_REPLACE	    1	/* replace first list with second */
-#define CLUSTER_ADD	    2	/* add second list to first */
-#define CLUSTER_SUBTRACT    3	/* subtract second list from first */
+#define CLUSTER_REPLACE	    1	// replace first list with second
+#define CLUSTER_ADD	    2	// add second list to first
+#define CLUSTER_SUBTRACT    3	// subtract second list from first
 
 #define SYN_CLSTR(buf)	((syn_cluster_T *)((buf)->b_syn_clusters.ga_data))
 
@@ -132,12 +131,12 @@ typedef struct syn_cluster_S
  * 22000 - 22999  CONTAINED indicator (current_syn_inc_tag added)
  * 23000 - 32767  cluster IDs (subtract SYNID_CLUSTER for the cluster ID)
  */
-#define SYNID_ALLBUT	MAX_HL_ID   /* syntax group ID for contains=ALLBUT */
-#define SYNID_TOP	21000	    /* syntax group ID for contains=TOP */
-#define SYNID_CONTAINED	22000	    /* syntax group ID for contains=CONTAINED */
-#define SYNID_CLUSTER	23000	    /* first syntax group ID for clusters */
-
-#define MAX_SYN_INC_TAG	999	    /* maximum before the above overflow */
+#define SYNID_ALLBUT	MAX_HL_ID   // syntax group ID for contains=ALLBUT
+#define SYNID_TOP	21000	    // syntax group ID for contains=TOP
+#define SYNID_CONTAINED	22000	    // syntax group ID for contains=CONTAINED
+#define SYNID_CLUSTER	23000	    // first syntax group ID for clusters
+
+#define MAX_SYN_INC_TAG	999	    // maximum before the above overflow
 #define MAX_CLUSTER_ID  (32767 - SYNID_CLUSTER)
 
 /*
@@ -183,37 +182,37 @@ static char msg_no_items[] = N_("No Synt
  */
 typedef struct state_item
 {
-    int		si_idx;			/* index of syntax pattern or
-					   KEYWORD_IDX */
-    int		si_id;			/* highlight group ID for keywords */
-    int		si_trans_id;		/* idem, transparency removed */
-    int		si_m_lnum;		/* lnum of the match */
-    int		si_m_startcol;		/* starting column of the match */
-    lpos_T	si_m_endpos;		/* just after end posn of the match */
-    lpos_T	si_h_startpos;		/* start position of the highlighting */
-    lpos_T	si_h_endpos;		/* end position of the highlighting */
-    lpos_T	si_eoe_pos;		/* end position of end pattern */
-    int		si_end_idx;		/* group ID for end pattern or zero */
-    int		si_ends;		/* if match ends before si_m_endpos */
-    int		si_attr;		/* attributes in this state */
-    long	si_flags;		/* HL_HAS_EOL flag in this state, and
-					 * HL_SKIP* for si_next_list */
+    int		si_idx;			// index of syntax pattern or
+					// KEYWORD_IDX
+    int		si_id;			// highlight group ID for keywords
+    int		si_trans_id;		// idem, transparency removed
+    int		si_m_lnum;		// lnum of the match
+    int		si_m_startcol;		// starting column of the match
+    lpos_T	si_m_endpos;		// just after end posn of the match
+    lpos_T	si_h_startpos;		// start position of the highlighting
+    lpos_T	si_h_endpos;		// end position of the highlighting
+    lpos_T	si_eoe_pos;		// end position of end pattern
+    int		si_end_idx;		// group ID for end pattern or zero
+    int		si_ends;		// if match ends before si_m_endpos
+    int		si_attr;		// attributes in this state
+    long	si_flags;		// HL_HAS_EOL flag in this state, and
+					// HL_SKIP* for si_next_list
 #ifdef FEAT_CONCEAL
-    int		si_seqnr;		/* sequence number */
-    int		si_cchar;		/* substitution character for conceal */
+    int		si_seqnr;		// sequence number
+    int		si_cchar;		// substitution character for conceal
 #endif
-    short	*si_cont_list;		/* list of contained groups */
-    short	*si_next_list;		/* nextgroup IDs after this item ends */
-    reg_extmatch_T *si_extmatch;	/* \z(...\) matches from start
-					 * pattern */
+    short	*si_cont_list;		// list of contained groups
+    short	*si_next_list;		// nextgroup IDs after this item ends
+    reg_extmatch_T *si_extmatch;	// \z(...\) matches from start
+					// pattern
 } stateitem_T;
 
-#define KEYWORD_IDX	-1	    /* value of si_idx for keywords */
-#define ID_LIST_ALL	(short *)-1 /* valid of si_cont_list for containing all
-				       but contained groups */
+#define KEYWORD_IDX	-1	    // value of si_idx for keywords
+#define ID_LIST_ALL	(short *)-1 // valid of si_cont_list for containing all
+				    // but contained groups
 
 #ifdef FEAT_CONCEAL
-static int next_seqnr = 1;		/* value to use for si_seqnr */
+static int next_seqnr = 1;		// value to use for si_seqnr
 #endif
 
 /*
@@ -222,14 +221,14 @@ static int next_seqnr = 1;		/* value to 
  */
 typedef struct
 {
-    int		flags;		/* flags for contained and transparent */
-    int		keyword;	/* TRUE for ":syn keyword" */
-    int		*sync_idx;	/* syntax item for "grouphere" argument, NULL
-				   if not allowed */
-    char	has_cont_list;	/* TRUE if "cont_list" can be used */
-    short	*cont_list;	/* group IDs for "contains" argument */
-    short	*cont_in_list;	/* group IDs for "containedin" argument */
-    short	*next_list;	/* group IDs for "nextgroup" argument */
+    int		flags;		// flags for contained and transparent
+    int		keyword;	// TRUE for ":syn keyword"
+    int		*sync_idx;	// syntax item for "grouphere" argument, NULL
+				// if not allowed
+    char	has_cont_list;	// TRUE if "cont_list" can be used
+    short	*cont_list;	// group IDs for "contains" argument
+    short	*cont_in_list;	// group IDs for "containedin" argument
+    short	*next_list;	// group IDs for "nextgroup" argument
 } syn_opt_arg_T;
 
 /*
@@ -239,15 +238,15 @@ typedef struct
  * If next_match_col == MAXCOL, no match found in this line.
  * (All end positions have the column of the char after the end)
  */
-static int next_match_col;		/* column for start of next match */
-static lpos_T next_match_m_endpos;	/* position for end of next match */
-static lpos_T next_match_h_startpos;  /* pos. for highl. start of next match */
-static lpos_T next_match_h_endpos;	/* pos. for highl. end of next match */
-static int next_match_idx;		/* index of matched item */
-static long next_match_flags;		/* flags for next match */
-static lpos_T next_match_eos_pos;	/* end of start pattn (start region) */
-static lpos_T next_match_eoe_pos;	/* pos. for end of end pattern */
-static int next_match_end_idx;		/* ID of group for end pattn or zero */
+static int next_match_col;		// column for start of next match
+static lpos_T next_match_m_endpos;	// position for end of next match
+static lpos_T next_match_h_startpos;	// pos. for highl. start of next match
+static lpos_T next_match_h_endpos;	// pos. for highl. end of next match
+static int next_match_idx;		// index of matched item
+static long next_match_flags;		// flags for next match
+static lpos_T next_match_eos_pos;	// end of start pattn (start region)
+static lpos_T next_match_eoe_pos;	// pos. for end of end pattern
+static int next_match_end_idx;		// ID of group for end pattn or zero
 static reg_extmatch_T *next_match_extmatch = NULL;
 
 /*
@@ -261,22 +260,22 @@ static reg_extmatch_T *next_match_extmat
  * The current state (within the line) of the recognition engine.
  * When current_state.ga_itemsize is 0 the current state is invalid.
  */
-static win_T	*syn_win;		/* current window for highlighting */
-static buf_T	*syn_buf;		/* current buffer for highlighting */
-static synblock_T *syn_block;		/* current buffer for highlighting */
+static win_T	*syn_win;		// current window for highlighting
+static buf_T	*syn_buf;		// current buffer for highlighting
+static synblock_T *syn_block;		// current buffer for highlighting
 #ifdef FEAT_RELTIME
-static proftime_T *syn_tm;		/* timeout limit */
+static proftime_T *syn_tm;		// timeout limit
 #endif
-static linenr_T current_lnum = 0;	/* lnum of current state */
-static colnr_T	current_col = 0;	/* column of current state */
-static int	current_state_stored = 0; /* TRUE if stored current state
-					   * after setting current_finished */
-static int	current_finished = 0;	/* current line has been finished */
-static garray_T current_state		/* current stack of state_items */
+static linenr_T current_lnum = 0;	// lnum of current state
+static colnr_T	current_col = 0;	// column of current state
+static int	current_state_stored = 0; // TRUE if stored current state
+					  // after setting current_finished
+static int	current_finished = 0;	// current line has been finished
+static garray_T current_state		// current stack of state_items
 		= {0, 0, 0, 0, NULL};
-static short	*current_next_list = NULL; /* when non-zero, nextgroup list */
-static int	current_next_flags = 0; /* flags for current_next_list */
-static int	current_line_id = 0;	/* unique number for current line */
+static short	*current_next_list = NULL; // when non-zero, nextgroup list
+static int	current_next_flags = 0; // flags for current_next_list
+static int	current_line_id = 0;	// unique number for current line
 
 #define CUR_STATE(idx)	((stateitem_T *)(current_state.ga_data))[idx]
 
@@ -377,7 +376,7 @@ syntax_start(win_T *wp, linenr_T lnum)
     linenr_T	parsed_lnum;
     linenr_T	first_stored;
     int		dist;
-    static varnumber_T changedtick = 0;	/* remember the last change ID */
+    static varnumber_T changedtick = 0;	// remember the last change ID
 
 #ifdef FEAT_CONCEAL
     current_sub_char = NUL;
@@ -404,7 +403,7 @@ syntax_start(win_T *wp, linenr_T lnum)
      */
     syn_stack_alloc();
     if (syn_block->b_sst_array == NULL)
-	return;		/* out of memory */
+	return;		// out of memory
     syn_block->b_sst_lasttick = display_tick;
 
     /*
@@ -438,7 +437,7 @@ syntax_start(win_T *wp, linenr_T lnum)
      */
     if (INVALID_STATE(&current_state) && syn_block->b_sst_array != NULL)
     {
-	/* Find last valid saved state before start_lnum. */
+	// Find last valid saved state before start_lnum.
 	for (p = syn_block->b_sst_first; p != NULL; p = p->sst_next)
 	{
 	    if (p->sst_lnum > lnum)
@@ -462,11 +461,11 @@ syntax_start(win_T *wp, linenr_T lnum)
     {
 	syn_sync(wp, lnum, last_valid);
 	if (current_lnum == 1)
-	    /* First line is always valid, no matter "minlines". */
+	    // First line is always valid, no matter "minlines".
 	    first_stored = 1;
 	else
-	    /* Need to parse "minlines" lines before state can be considered
-	     * valid to store. */
+	    // Need to parse "minlines" lines before state can be considered
+	    // valid to store.
 	    first_stored = current_lnum + syn_block->b_syn_sync_minlines;
     }
     else
@@ -486,13 +485,13 @@ syntax_start(win_T *wp, linenr_T lnum)
 	(void)syn_finish_line(FALSE);
 	++current_lnum;
 
-	/* If we parsed at least "minlines" lines or started at a valid
-	 * state, the current state is considered valid. */
+	// If we parsed at least "minlines" lines or started at a valid
+	// state, the current state is considered valid.
 	if (current_lnum >= first_stored)
 	{
-	    /* Check if the saved state entry is for the current line and is
-	     * equal to the current state.  If so, then validate all saved
-	     * states that depended on a change before the parsed line. */
+	    // Check if the saved state entry is for the current line and is
+	    // equal to the current state.  If so, then validate all saved
+	    // states that depended on a change before the parsed line.
 	    if (prev == NULL)
 		prev = syn_stack_find_entry(current_lnum - 1);
 	    if (prev == NULL)
@@ -510,27 +509,27 @@ syntax_start(win_T *wp, linenr_T lnum)
 		while (sp != NULL && sp->sst_change_lnum <= parsed_lnum)
 		{
 		    if (sp->sst_lnum <= lnum)
-			/* valid state before desired line, use this one */
+			// valid state before desired line, use this one
 			prev = sp;
 		    else if (sp->sst_change_lnum == 0)
-			/* past saved states depending on change, break here. */
+			// past saved states depending on change, break here.
 			break;
 		    sp->sst_change_lnum = 0;
 		    sp = sp->sst_next;
 		}
 		load_current_state(prev);
 	    }
-	    /* Store the state at this line when it's the first one, the line
-	     * where we start parsing, or some distance from the previously
-	     * saved state.  But only when parsed at least 'minlines'. */
+	    // Store the state at this line when it's the first one, the line
+	    // where we start parsing, or some distance from the previously
+	    // saved state.  But only when parsed at least 'minlines'.
 	    else if (prev == NULL
 			|| current_lnum == lnum
 			|| current_lnum >= prev->sst_lnum + dist)
 		prev = store_current_state();
 	}
 
-	/* This can take a long time: break when CTRL-C pressed.  The current
-	 * state will be wrong then. */
+	// This can take a long time: break when CTRL-C pressed.  The current
+	// state will be wrong then.
 	line_breakcheck();
 	if (got_int)
 	{
@@ -652,8 +651,8 @@ syn_sync(
      */
     if (syn_block->b_syn_sync_flags & SF_CCOMMENT)
     {
-	/* Need to make syn_buf the current buffer for a moment, to be able to
-	 * use find_start_comment(). */
+	// Need to make syn_buf the current buffer for a moment, to be able to
+	// use find_start_comment().
 	curwin_save = curwin;
 	curwin = wp;
 	curbuf_save = curbuf;
@@ -670,7 +669,7 @@ syn_sync(
 	}
 	current_lnum = start_lnum;
 
-	/* set cursor to start of search */
+	// set cursor to start of search
 	cursor_save = wp->w_cursor;
 	wp->w_cursor.lnum = start_lnum;
 	wp->w_cursor.col = 0;
@@ -694,7 +693,7 @@ syn_sync(
 		}
 	}
 
-	/* restore cursor and buffer */
+	// restore cursor and buffer
 	wp->w_cursor = cursor_save;
 	curwin = curwin_save;
 	curbuf = curbuf_save;
@@ -717,7 +716,7 @@ syn_sync(
 	lnum = start_lnum;
 	while (--lnum > break_lnum)
 	{
-	    /* This can take a long time: break when CTRL-C pressed. */
+	    // This can take a long time: break when CTRL-C pressed.
 	    line_breakcheck();
 	    if (got_int)
 	    {
@@ -726,7 +725,7 @@ syn_sync(
 		break;
 	    }
 
-	    /* Check if we have run into a valid saved state stack now. */
+	    // Check if we have run into a valid saved state stack now.
 	    if (last_valid != NULL && lnum == last_valid->sst_lnum)
 	    {
 		load_current_state(last_valid);
@@ -759,13 +758,13 @@ syn_sync(
 			cur_si = &CUR_STATE(current_state.ga_len - 1);
 			if (cur_si->si_m_endpos.lnum > start_lnum)
 			{
-			    /* ignore match that goes to after where started */
+			    // ignore match that goes to after where started
 			    current_lnum = end_lnum;
 			    break;
 			}
 			if (cur_si->si_idx < 0)
 			{
-			    /* Cannot happen? */
+			    // Cannot happen?
 			    found_flags = 0;
 			    found_match_idx = KEYWORD_IDX;
 			}
@@ -794,9 +793,9 @@ syn_sync(
 			else
 			    ++current_col;
 
-			/* syn_current_attr() will have skipped the check for
-			 * an item that ends here, need to do that now.  Be
-			 * careful not to go past the NUL. */
+			// syn_current_attr() will have skipped the check for
+			// an item that ends here, need to do that now.  Be
+			// careful not to go past the NUL.
 			prev_current_col = current_col;
 			if (syn_getcurline()[current_col] != NUL)
 			    ++current_col;
@@ -854,7 +853,7 @@ syn_sync(
 	    invalidate_current_state();
 	}
 
-	/* Ran into start of the file or exceeded maximum number of lines */
+	// Ran into start of the file or exceeded maximum number of lines
 	if (lnum <= break_lnum)
 	{
 	    invalidate_current_state();
@@ -891,11 +890,11 @@ syn_match_linecont(linenr_T lnum)
 {
     regmmatch_T regmatch;
     int r;
-    char_u	buf_chartab[32];  /* chartab array for syn iskyeyword */
+    char_u	buf_chartab[32];  // chartab array for syn iskyeyword
 
     if (syn_block->b_syn_linecont_prog != NULL)
     {
-	/* use syntax iskeyword option */
+	// use syntax iskeyword option
 	save_chartab(buf_chartab);
 	regmatch.rmm_ic = syn_block->b_syn_linecont_ic;
 	regmatch.regprog = syn_block->b_syn_linecont_prog;
@@ -948,8 +947,8 @@ syn_update_ends(int startofline)
 
     if (startofline)
     {
-	/* Check for a match carried over from a previous line with a
-	 * contained region.  The match ends as soon as the region ends. */
+	// Check for a match carried over from a previous line with a
+	// contained region.  The match ends as soon as the region ends.
 	for (i = 0; i < current_state.ga_len; ++i)
 	{
 	    cur_si = &CUR_STATE(i);
@@ -990,7 +989,7 @@ syn_update_ends(int startofline)
 			    || (seen_keepend && !startofline)
 			    || (i == current_state.ga_len - 1 && startofline))
 	{
-	    cur_si->si_h_startpos.col = 0;	/* start highl. in col 0 */
+	    cur_si->si_h_startpos.col = 0;	// start highl. in col 0
 	    cur_si->si_h_startpos.lnum = current_lnum;
 
 	    if (!(cur_si->si_flags & HL_MATCHCONT))
@@ -1003,9 +1002,8 @@ syn_update_ends(int startofline)
     check_keepend();
 }
 
-/****************************************
- * Handling of the state stack cache.
- */
+/////////////////////////////////////////
+// Handling of the state stack cache.
 
 /*
  * EXPLANATION OF THE SYNTAX STATE STACK CACHE
@@ -1067,7 +1065,7 @@ syn_stack_free_all(synblock_T *block)
     syn_stack_free_block(block);
 
 #ifdef FEAT_FOLDING
-    /* When using "syntax" fold method, must update all folds. */
+    // When using "syntax" fold method, must update all folds.
     FOR_ALL_WINDOWS(wp)
     {
 	if (wp->w_s == block && foldmethodIsSyntax(wp))
@@ -1096,7 +1094,7 @@ syn_stack_alloc(void)
 	len = SST_MAX_ENTRIES;
     if (syn_block->b_sst_len > len * 2 || syn_block->b_sst_len < len)
     {
-	/* Allocate 50% too much, to avoid reallocating too often. */
+	// Allocate 50% too much, to avoid reallocating too often.
 	len = syn_buf->b_ml.ml_line_count;
 	len = (len + len / 2) / SST_DIST + Rows * 2;
 	if (len < SST_MIN_ENTRIES)
@@ -1106,8 +1104,8 @@ syn_stack_alloc(void)
 
 	if (syn_block->b_sst_array != NULL)
 	{
-	    /* When shrinking the array, cleanup the existing stack.
-	     * Make sure that all valid entries fit in the new array. */
+	    // When shrinking the array, cleanup the existing stack.
+	    // Make sure that all valid entries fit in the new array.
 	    while (syn_block->b_sst_len - syn_block->b_sst_freecount + 2 > len
 		    && syn_stack_cleanup())
 		;
@@ -1116,13 +1114,13 @@ syn_stack_alloc(void)
 	}
 
 	sstp = ALLOC_CLEAR_MULT(synstate_T, len);
-	if (sstp == NULL)	/* out of memory! */
+	if (sstp == NULL)	// out of memory!
 	    return;
 
 	to = sstp - 1;
 	if (syn_block->b_sst_array != NULL)
 	{
-	    /* Move the states from the old array to the new one. */
+	    // Move the states from the old array to the new one.
 	    for (from = syn_block->b_sst_first; from != NULL;
 							from = from->sst_next)
 	    {
@@ -1143,7 +1141,7 @@ syn_stack_alloc(void)
 	    syn_block->b_sst_freecount = len;
 	}
 
-	/* Create the list of free entries. */
+	// Create the list of free entries.
 	syn_block->b_sst_firstfree = to + 1;
 	while (++to < sstp + len)
 	    to->sst_next = to + 1;
@@ -1189,7 +1187,7 @@ syn_stack_apply_changes_block(synblock_T
 	    n = p->sst_lnum + buf->b_mod_xlines;
 	    if (n <= buf->b_mod_bot)
 	    {
-		/* this state is inside the changed area, remove it */
+		// this state is inside the changed area, remove it
 		np = p->sst_next;
 		if (prev == NULL)
 		    block->b_sst_first = np;
@@ -1199,9 +1197,9 @@ syn_stack_apply_changes_block(synblock_T
 		p = np;
 		continue;
 	    }
-	    /* This state is below the changed area.  Remember the line
-	     * that needs to be parsed before this entry can be made valid
-	     * again. */
+	    // This state is below the changed area.  Remember the line
+	    // that needs to be parsed before this entry can be made valid
+	    // again.
 	    if (p->sst_change_lnum != 0 && p->sst_change_lnum > buf->b_mod_top)
 	    {
 		if (p->sst_change_lnum + buf->b_mod_xlines > buf->b_mod_top)
@@ -1236,7 +1234,7 @@ syn_stack_cleanup(void)
     if (syn_block->b_sst_first == NULL)
 	return retval;
 
-    /* Compute normal distance between non-displayed entries. */
+    // Compute normal distance between non-displayed entries.
     if (syn_block->b_sst_len <= Rows)
 	dist = 999999;
     else
@@ -1274,7 +1272,7 @@ syn_stack_cleanup(void)
     {
 	if (p->sst_tick == tick && prev->sst_lnum + dist > p->sst_lnum)
 	{
-	    /* Move this entry from used list to free list */
+	    // Move this entry from used list to free list
 	    prev->sst_next = p->sst_next;
 	    syn_stack_free_entry(syn_block, p);
 	    p = prev;
@@ -1348,17 +1346,17 @@ store_current_state(void)
     {
 	if (sp != NULL)
 	{
-	    /* find "sp" in the list and remove it */
+	    // find "sp" in the list and remove it
 	    if (syn_block->b_sst_first == sp)
-		/* it's the first entry */
+		// it's the first entry
 		syn_block->b_sst_first = sp->sst_next;
 	    else
 	    {
-		/* find the entry just before this one to adjust sst_next */
+		// find the entry just before this one to adjust sst_next
 		for (p = syn_block->b_sst_first; p != NULL; p = p->sst_next)
 		    if (p->sst_next == sp)
 			break;
-		if (p != NULL)	/* just in case */
+		if (p != NULL)	// just in case
 		    p->sst_next = sp->sst_next;
 	    }
 	    syn_stack_free_entry(syn_block, sp);
@@ -1370,32 +1368,32 @@ store_current_state(void)
 	/*
 	 * Add a new entry
 	 */
-	/* If no free items, cleanup the array first. */
+	// If no free items, cleanup the array first.
 	if (syn_block->b_sst_freecount == 0)
 	{
 	    (void)syn_stack_cleanup();
-	    /* "sp" may have been moved to the freelist now */
+	    // "sp" may have been moved to the freelist now
 	    sp = syn_stack_find_entry(current_lnum);
 	}
-	/* Still no free items?  Must be a strange problem... */
+	// Still no free items?  Must be a strange problem...
 	if (syn_block->b_sst_freecount == 0)
 	    sp = NULL;
 	else
 	{
-	    /* Take the first item from the free list and put it in the used
-	     * list, after *sp */
+	    // Take the first item from the free list and put it in the used
+	    // list, after *sp
 	    p = syn_block->b_sst_firstfree;
 	    syn_block->b_sst_firstfree = p->sst_next;
 	    --syn_block->b_sst_freecount;
 	    if (sp == NULL)
 	    {
-		/* Insert in front of the list */
+		// Insert in front of the list
 		p->sst_next = syn_block->b_sst_first;
 		syn_block->b_sst_first = p;
 	    }
 	    else
 	    {
-		/* insert in list after *sp */
+		// insert in list after *sp
 		p->sst_next = sp->sst_next;
 		sp->sst_next = p;
 	    }
@@ -1406,13 +1404,13 @@ store_current_state(void)
     }
     if (sp != NULL)
     {
-	/* When overwriting an existing state stack, clear it first */
+	// When overwriting an existing state stack, clear it first
 	clear_syn_state(sp);
 	sp->sst_stacksize = current_state.ga_len;
 	if (current_state.ga_len > SST_FIX_STATES)
 	{
-	    /* Need to clear it, might be something remaining from when the
-	     * length was less than SST_FIX_STATES. */
+	    // Need to clear it, might be something remaining from when the
+	    // length was less than SST_FIX_STATES.
 	    ga_init2(&sp->sst_union.sst_ga, (int)sizeof(bufstate_T), 1);
 	    if (ga_grow(&sp->sst_union.sst_ga, current_state.ga_len) == FAIL)
 		sp->sst_stacksize = 0;
@@ -1498,11 +1496,11 @@ syn_stack_equal(synstate_T *sp)
     bufstate_T	*bp;
     reg_extmatch_T	*six, *bsx;
 
-    /* First a quick check if the stacks have the same size end nextlist. */
+    // First a quick check if the stacks have the same size end nextlist.
     if (sp->sst_stacksize == current_state.ga_len
 	    && sp->sst_next_list == current_next_list)
     {
-	/* Need to compare all states on both stacks. */
+	// Need to compare all states on both stacks.
 	if (sp->sst_stacksize > SST_FIX_STATES)
 	    bp = SYN_STATE_P(&(sp->sst_union.sst_ga));
 	else
@@ -1510,29 +1508,29 @@ syn_stack_equal(synstate_T *sp)
 
 	for (i = current_state.ga_len; --i >= 0; )
 	{
-	    /* If the item has another index the state is different. */
+	    // If the item has another index the state is different.
 	    if (bp[i].bs_idx != CUR_STATE(i).si_idx)
 		break;
 	    if (bp[i].bs_extmatch != CUR_STATE(i).si_extmatch)
 	    {
-		/* When the extmatch pointers are different, the strings in
-		 * them can still be the same.  Check if the extmatch
-		 * references are equal. */
+		// When the extmatch pointers are different, the strings in
+		// them can still be the same.  Check if the extmatch
+		// references are equal.
 		bsx = bp[i].bs_extmatch;
 		six = CUR_STATE(i).si_extmatch;
-		/* If one of the extmatch pointers is NULL the states are
-		 * different. */
+		// If one of the extmatch pointers is NULL the states are
+		// different.
 		if (bsx == NULL || six == NULL)
 		    break;
 		for (j = 0; j < NSUBEXP; ++j)
 		{
-		    /* Check each referenced match string. They must all be
-		     * equal. */
+		    // Check each referenced match string. They must all be
+		    // equal.
 		    if (bsx->matches[j] != six->matches[j])
 		    {
-			/* If the pointer is different it can still be the
-			 * same text.  Compare the strings, ignore case when
-			 * the start item has the sp_ic flag set. */
+			// If the pointer is different it can still be the
+			// same text.  Compare the strings, ignore case when
+			// the start item has the sp_ic flag set.
 			if (bsx->matches[j] == NULL
 				|| six->matches[j] == NULL)
 			    break;
@@ -1584,7 +1582,7 @@ syntax_end_parsing(linenr_T lnum)
 invalidate_current_state(void)
 {
     clear_current_state();
-    current_state.ga_itemsize = 0;	/* mark current_state invalid */
+    current_state.ga_itemsize = 0;	// mark current_state invalid
     current_next_list = NULL;
     keepend_level = -1;
 }
@@ -1651,7 +1649,7 @@ syntax_check_changed(linenr_T lnum)
  */
     static int
 syn_finish_line(
-    int	    syncing)		/* called for syncing */
+    int	    syncing)		// called for syncing
 {
     stateitem_T	*cur_si;
     colnr_T	prev_current_col;
@@ -1673,9 +1671,9 @@ syn_finish_line(
 					  & (HL_SYNC_HERE|HL_SYNC_THERE)))
 		return TRUE;
 
-	    /* syn_current_attr() will have skipped the check for an item
-	     * that ends here, need to do that now.  Be careful not to go
-	     * past the NUL. */
+	    // syn_current_attr() will have skipped the check for an item
+	    // that ends here, need to do that now.  Be careful not to go
+	    // past the NUL.
 	    prev_current_col = current_col;
 	    if (syn_getcurline()[current_col] != NUL)
 		++current_col;
@@ -1700,22 +1698,22 @@ syn_finish_line(
 get_syntax_attr(
     colnr_T	col,
     int		*can_spell,
-    int		keep_state)	/* keep state of char at "col" */
+    int		keep_state)	// keep state of char at "col"
 {
     int	    attr = 0;
 
     if (can_spell != NULL)
-	/* Default: Only do spelling when there is no @Spell cluster or when
-	 * ":syn spell toplevel" was used. */
+	// Default: Only do spelling when there is no @Spell cluster or when
+	// ":syn spell toplevel" was used.
 	*can_spell = syn_block->b_syn_spell == SYNSPL_DEFAULT
 		    ? (syn_block->b_spell_cluster_id == 0)
 		    : (syn_block->b_syn_spell == SYNSPL_TOP);
 
-    /* check for out of memory situation */
+    // check for out of memory situation
     if (syn_block->b_sst_array == NULL)
 	return 0;
 
-    /* After 'synmaxcol' the attribute is always zero. */
+    // After 'synmaxcol' the attribute is always zero.
     if (syn_buf->b_p_smc > 0 && col >= (colnr_T)syn_buf->b_p_smc)
     {
 	clear_current_state();
@@ -1730,7 +1728,7 @@ get_syntax_attr(
 	return 0;
     }
 
-    /* Make sure current_state is valid */
+    // Make sure current_state is valid
     if (INVALID_STATE(&current_state))
 	validate_current_state();
 
@@ -1752,18 +1750,18 @@ get_syntax_attr(
  */
     static int
 syn_current_attr(
-    int		syncing,		/* When 1: called for syncing */
-    int		displaying,		/* result will be displayed */
-    int		*can_spell,		/* return: do spell checking */
-    int		keep_state)		/* keep syntax stack afterwards */
+    int		syncing,		// When 1: called for syncing
+    int		displaying,		// result will be displayed
+    int		*can_spell,		// return: do spell checking
+    int		keep_state)		// keep syntax stack afterwards
 {
     int		syn_id;
-    lpos_T	endpos;		/* was: char_u *endp; */
-    lpos_T	hl_startpos;	/* was: int hl_startcol; */
+    lpos_T	endpos;		// was: char_u *endp;
+    lpos_T	hl_startpos;	// was: int hl_startcol;
     lpos_T	hl_endpos;
-    lpos_T	eos_pos;	/* end-of-start match (start region) */
-    lpos_T	eoe_pos;	/* end-of-end pattern */
-    int		end_idx;	/* group ID for end pattern */
+    lpos_T	eos_pos;	// end-of-start match (start region)
+    lpos_T	eoe_pos;	// end-of-end pattern
+    int		end_idx;	// group ID for end pattern
     int		idx;
     synpat_T	*spp;
     stateitem_T	*cur_si, *sip = NULL;
@@ -1772,18 +1770,18 @@ syn_current_attr(
     long	flags;
     int		cchar;
     short	*next_list;
-    int		found_match;		    /* found usable match */
-    static int	try_next_column = FALSE;    /* must try in next col */
+    int		found_match;		    // found usable match
+    static int	try_next_column = FALSE;    // must try in next col
     int		do_keywords;
     regmmatch_T	regmatch;
     lpos_T	pos;
     int		lc_col;
     reg_extmatch_T *cur_extmatch = NULL;
-    char_u	buf_chartab[32];  /* chartab array for syn iskyeyword */
-    char_u	*line;		/* current line.  NOTE: becomes invalid after
-				   looking for a pattern match! */
-
-    /* variables for zero-width matches that have a "nextgroup" argument */
+    char_u	buf_chartab[32];  // chartab array for syn iskyeyword
+    char_u	*line;		// current line.  NOTE: becomes invalid after
+				// looking for a pattern match!
+
+    // variables for zero-width matches that have a "nextgroup" argument
     int		keep_next_list;
     int		zero_width_next_list = FALSE;
     garray_T	zero_width_next_ga;
@@ -1807,7 +1805,7 @@ syn_current_attr(
 	return 0;
     }
 
-    /* if the current or next character is NUL, we will finish the line now */
+    // if the current or next character is NUL, we will finish the line now
     if (line[current_col] == NUL || line[current_col + 1] == NUL)
     {
 	current_finished = TRUE;
@@ -1825,16 +1823,16 @@ syn_current_attr(
 	try_next_column = FALSE;
     }
 
-    /* Only check for keywords when not syncing and there are some. */
+    // Only check for keywords when not syncing and there are some.
     do_keywords = !syncing
 		    && (syn_block->b_keywtab.ht_used > 0
 			    || syn_block->b_keywtab_ic.ht_used > 0);
 
-    /* Init the list of zero-width matches with a nextlist.  This is used to
-     * avoid matching the same item in the same position twice. */
+    // Init the list of zero-width matches with a nextlist.  This is used to
+    // avoid matching the same item in the same position twice.
     ga_init2(&zero_width_next_ga, (int)sizeof(int), 10);
 
-    /* use syntax iskeyword option */
+    // use syntax iskeyword option
     save_chartab(buf_chartab);
 
     /*
@@ -1888,7 +1886,7 @@ syn_current_attr(
 			cur_si = &CUR_STATE(current_state.ga_len - 1);
 			cur_si->si_m_startcol = current_col;
 			cur_si->si_h_startpos.lnum = current_lnum;
-			cur_si->si_h_startpos.col = 0;	/* starts right away */
+			cur_si->si_h_startpos.col = 0;	// starts right away
 			cur_si->si_m_endpos.lnum = current_lnum;
 			cur_si->si_m_endpos.col = endcol;
 			cur_si->si_h_endpos.lnum = current_lnum;
@@ -1950,7 +1948,7 @@ syn_current_attr(
 		     * pattern takes quite a bit of time, thus we want to
 		     * avoid doing it when it's not needed.
 		     */
-		    next_match_idx = 0;		/* no match in this line yet */
+		    next_match_idx = 0;		// no match in this line yet
 		    next_match_col = MAXCOL;
 		    for (idx = syn_block->b_syn_patterns.ga_len; --idx >= 0; )
 		    {
@@ -1970,9 +1968,9 @@ syn_current_attr(
 			{
 			    int r;
 
-			    /* If we already tried matching in this line, and
-			     * there isn't a match before next_match_col, skip
-			     * this item. */
+			    // If we already tried matching in this line, and
+			    // there isn't a match before next_match_col, skip
+			    // this item.
 			    if (spp->sp_line_id == current_line_id
 				    && spp->sp_startcol >= next_match_col)
 				continue;
@@ -1991,7 +1989,7 @@ syn_current_attr(
 			    spp->sp_prog = regmatch.regprog;
 			    if (!r)
 			    {
-				/* no match in this line, try another one */
+				// no match in this line, try another one
 				spp->sp_startcol = MAXCOL;
 				continue;
 			    }
@@ -2003,15 +2001,15 @@ syn_current_attr(
 							 spp, SPO_MS_OFF, -1);
 			    if (pos.lnum > current_lnum)
 			    {
-				/* must have used end of match in a next line,
-				 * we can't handle that */
+				// must have used end of match in a next line,
+				// we can't handle that
 				spp->sp_startcol = MAXCOL;
 				continue;
 			    }
 			    startcol = pos.col;
 
-			    /* remember the next column where this pattern
-			     * matches in the current line */
+			    // remember the next column where this pattern
+			    // matches in the current line
 			    spp->sp_startcol = startcol;
 
 			    /*
@@ -2035,12 +2033,12 @@ syn_current_attr(
 			    endpos.lnum = regmatch.endpos[0].lnum;
 			    endpos.col = regmatch.endpos[0].col;
 
-			    /* Compute the highlight start. */
+			    // Compute the highlight start.
 			    syn_add_start_off(&hl_startpos, &regmatch,
 							 spp, SPO_HS_OFF, -1);
 
-			    /* Compute the region start. */
-			    /* Default is to use the end of the match. */
+			    // Compute the region start.
+			    // Default is to use the end of the match.
 			    syn_add_end_off(&eos_pos, &regmatch,
 							 spp, SPO_RS_OFF, 0);
 
@@ -2053,7 +2051,7 @@ syn_current_attr(
 			    re_extmatch_out = NULL;
 
 			    flags = 0;
-			    eoe_pos.lnum = 0;	/* avoid warning */
+			    eoe_pos.lnum = 0;	// avoid warning
 			    eoe_pos.col = 0;
 			    end_idx = 0;
 			    hl_endpos.lnum = 0;
@@ -2073,7 +2071,7 @@ syn_current_attr(
 				find_endpos(idx, &startpos, &endpos, &hl_endpos,
 				    &flags, &eoe_pos, &end_idx, cur_extmatch);
 				if (endpos.lnum == 0)
-				    continue;	    /* not found */
+				    continue;	    // not found
 			    }
 
 			    /*
@@ -2104,8 +2102,8 @@ syn_current_attr(
 			    /*
 			     * keep the best match so far in next_match_*
 			     */
-			    /* Highlighting must start after startpos and end
-			     * before endpos. */
+			    // Highlighting must start after startpos and end
+			    // before endpos.
 			    if (hl_startpos.lnum == current_lnum
 					   && (int)hl_startpos.col < startcol)
 				hl_startpos.col = startcol;
@@ -2134,8 +2132,8 @@ syn_current_attr(
 		{
 		    synpat_T	*lspp;
 
-		    /* When a zero-width item matched which has a nextgroup,
-		     * don't push the item but set nextgroup. */
+		    // When a zero-width item matched which has a nextgroup,
+		    // don't push the item but set nextgroup.
 		    lspp = &(SYN_ITEMS(syn_block)[next_match_idx]);
 		    if (next_match_m_endpos.lnum == current_lnum
 			    && next_match_m_endpos.col == current_col
@@ -2146,9 +2144,9 @@ syn_current_attr(
 			keep_next_list = TRUE;
 			zero_width_next_list = TRUE;
 
-			/* Add the index to a list, so that we can check
-			 * later that we don't match it again (and cause an
-			 * endless loop). */
+			// Add the index to a list, so that we can check
+			// later that we don't match it again (and cause an
+			// endless loop).
 			if (ga_grow(&zero_width_next_ga, 1) == OK)
 			{
 			    ((int *)(zero_width_next_ga.ga_data))
@@ -2254,8 +2252,8 @@ syn_current_attr(
 	     */
 	    if (syn_block->b_spell_cluster_id == 0)
 	    {
-		/* There is no @Spell cluster: Do spelling for items without
-		 * @NoSpell cluster. */
+		// There is no @Spell cluster: Do spelling for items without
+		// @NoSpell cluster.
 		if (syn_block->b_nospell_cluster_id == 0
 						     || current_trans_id == 0)
 		    *can_spell = (syn_block->b_syn_spell != SYNSPL_NOTOP);
@@ -2269,10 +2267,10 @@ syn_current_attr(
 	    }
 	    else
 	    {
-		/* The @Spell cluster is defined: Do spelling in items with
-		 * the @Spell cluster.  But not when @NoSpell is also there.
-		 * At the toplevel only spell check when ":syn spell toplevel"
-		 * was used. */
+		// The @Spell cluster is defined: Do spelling in items with
+		// the @Spell cluster.  But not when @NoSpell is also there.
+		// At the toplevel only spell check when ":syn spell toplevel"
+		// was used.
 		if (current_trans_id == 0)
 		    *can_spell = (syn_block->b_syn_spell == SYNSPL_TOP);
 		else
@@ -2314,13 +2312,13 @@ syn_current_attr(
 	}
     }
     else if (can_spell != NULL)
-	/* Default: Only do spelling when there is no @Spell cluster or when
-	 * ":syn spell toplevel" was used. */
+	// Default: Only do spelling when there is no @Spell cluster or when
+	// ":syn spell toplevel" was used.
 	*can_spell = syn_block->b_syn_spell == SYNSPL_DEFAULT
 		    ? (syn_block->b_spell_cluster_id == 0)
 		    : (syn_block->b_syn_spell == SYNSPL_TOP);
 
-    /* nextgroup ends at end of line, unless "skipnl" or "skipempty" present */
+    // nextgroup ends at end of line, unless "skipnl" or "skipempty" present
     if (current_next_list != NULL
 	    && (line = syn_getcurline())[current_col] != NUL
 	    && line[current_col + 1] == NUL
@@ -2330,7 +2328,7 @@ syn_current_attr(
     if (zero_width_next_ga.ga_len > 0)
 	ga_clear(&zero_width_next_ga);
 
-    /* No longer need external matches.  But keep next_match_extmatch. */
+    // No longer need external matches.  But keep next_match_extmatch.
     unref_extmatch(re_extmatch_out);
     re_extmatch_out = NULL;
     unref_extmatch(cur_extmatch);
@@ -2353,8 +2351,8 @@ did_match_already(int idx, garray_T *gap
 		&& CUR_STATE(i).si_idx == idx)
 	    return TRUE;
 
-    /* Zero-width matches with a nextgroup argument are not put on the syntax
-     * stack, and can only be matched once anyway. */
+    // Zero-width matches with a nextgroup argument are not put on the syntax
+    // stack, and can only be matched once anyway.
     for (i = gap->ga_len; --i >= 0; )
 	if (((int *)(gap->ga_data))[i] == idx)
 	    return TRUE;
@@ -2400,7 +2398,7 @@ push_next_match(stateitem_T *cur_si)
 	cur_si->si_extmatch = ref_extmatch(next_match_extmatch);
 	if (spp->sp_type == SPTYPE_START && !(spp->sp_flags & HL_ONELINE))
 	{
-	    /* Try to find the end pattern in the current line */
+	    // Try to find the end pattern in the current line
 	    update_si_end(cur_si, (int)(next_match_m_endpos.col), TRUE);
 	    check_keepend();
 	}
@@ -2450,7 +2448,7 @@ push_next_match(stateitem_T *cur_si)
 	}
     }
 
-    next_match_idx = -1;	/* try other match next time */
+    next_match_idx = -1;	// try other match next time
 
     return cur_si;
 }
@@ -2495,26 +2493,26 @@ check_state_ends(void)
 #endif
 		update_si_attr(current_state.ga_len - 1);
 
-		/* nextgroup= should not match in the end pattern */
+		// nextgroup= should not match in the end pattern
 		current_next_list = NULL;
 
-		/* what matches next may be different now, clear it */
+		// what matches next may be different now, clear it
 		next_match_idx = 0;
 		next_match_col = MAXCOL;
 		break;
 	    }
 	    else
 	    {
-		/* handle next_list, unless at end of line and no "skipnl" or
-		 * "skipempty" */
+		// handle next_list, unless at end of line and no "skipnl" or
+		// "skipempty"
 		current_next_list = cur_si->si_next_list;
 		current_next_flags = cur_si->si_flags;
 		if (!(current_next_flags & (HL_SKIPNL | HL_SKIPEMPTY))
 			&& syn_getcurline()[current_col] == NUL)
 		    current_next_list = NULL;
 
-		/* When the ended item has "extend", another item with
-		 * "keepend" now needs to check for its end. */
+		// When the ended item has "extend", another item with
+		// "keepend" now needs to check for its end.
 		 had_extend = (cur_si->si_flags & HL_EXTEND);
 
 		pop_current_state();
@@ -2569,7 +2567,7 @@ update_si_attr(int idx)
     stateitem_T	*sip = &CUR_STATE(idx);
     synpat_T	*spp;
 
-    /* This should not happen... */
+    // This should not happen...
     if (sip->si_idx < 0)
 	return;
 
@@ -2681,8 +2679,8 @@ check_keepend(void)
     static void
 update_si_end(
     stateitem_T	*sip,
-    int		startcol,   /* where to start searching for the end */
-    int		force)	    /* when TRUE overrule a previous end */
+    int		startcol,   // where to start searching for the end
+    int		force)	    // when TRUE overrule a previous end
 {
     lpos_T	startpos;
     lpos_T	endpos;
@@ -2690,13 +2688,13 @@ update_si_end(
     lpos_T	end_endpos;
     int		end_idx;
 
-    /* return quickly for a keyword */
+    // return quickly for a keyword
     if (sip->si_idx < 0)
 	return;
 
-    /* Don't update when it's already done.  Can be a match of an end pattern
-     * that started in a previous line.  Watch out: can also be a "keepend"
-     * from a containing item. */
+    // Don't update when it's already done.  Can be a match of an end pattern
+    // that started in a previous line.  Watch out: can also be a "keepend"
+    // from a containing item.
     if (!force && sip->si_m_endpos.lnum >= current_lnum)
 	return;
 
@@ -2712,17 +2710,17 @@ update_si_end(
 
     if (endpos.lnum == 0)
     {
-	/* No end pattern matched. */
+	// No end pattern matched.
 	if (SYN_ITEMS(syn_block)[sip->si_idx].sp_flags & HL_ONELINE)
 	{
-	    /* a "oneline" never continues in the next line */
+	    // a "oneline" never continues in the next line
 	    sip->si_ends = TRUE;
 	    sip->si_m_endpos.lnum = current_lnum;
 	    sip->si_m_endpos.col = (colnr_T)STRLEN(syn_getcurline());
 	}
 	else
 	{
-	    /* continues in the next line */
+	    // continues in the next line
 	    sip->si_ends = FALSE;
 	    sip->si_m_endpos.lnum = 0;
 	}
@@ -2730,7 +2728,7 @@ update_si_end(
     }
     else
     {
-	/* match within this line */
+	// match within this line
 	sip->si_m_endpos = endpos;
 	sip->si_h_endpos = hl_endpos;
 	sip->si_eoe_pos = end_endpos;
@@ -2766,10 +2764,10 @@ pop_current_state(void)
 	unref_extmatch(CUR_STATE(current_state.ga_len - 1).si_extmatch);
 	--current_state.ga_len;
     }
-    /* after the end of a pattern, try matching a keyword or pattern */
+    // after the end of a pattern, try matching a keyword or pattern
     next_match_idx = -1;
 
-    /* if first state with "keepend" is popped, reset keepend_level */
+    // if first state with "keepend" is popped, reset keepend_level
     if (keepend_level >= current_state.ga_len)
 	keepend_level = -1;
 }
@@ -2785,27 +2783,27 @@ pop_current_state(void)
  */
     static void
 find_endpos(
-    int		idx,		/* index of the pattern */
-    lpos_T	*startpos,	/* where to start looking for an END match */
-    lpos_T	*m_endpos,	/* return: end of match */
-    lpos_T	*hl_endpos,	/* return: end of highlighting */
-    long	*flagsp,	/* return: flags of matching END */
-    lpos_T	*end_endpos,	/* return: end of end pattern match */
-    int		*end_idx,	/* return: group ID for end pat. match, or 0 */
-    reg_extmatch_T *start_ext)	/* submatches from the start pattern */
+    int		idx,		// index of the pattern
+    lpos_T	*startpos,	// where to start looking for an END match
+    lpos_T	*m_endpos,	// return: end of match
+    lpos_T	*hl_endpos,	// return: end of highlighting
+    long	*flagsp,	// return: flags of matching END
+    lpos_T	*end_endpos,	// return: end of end pattern match
+    int		*end_idx,	// return: group ID for end pat. match, or 0
+    reg_extmatch_T *start_ext)	// submatches from the start pattern
 {
     colnr_T	matchcol;
     synpat_T	*spp, *spp_skip;
     int		start_idx;
     int		best_idx;
     regmmatch_T	regmatch;
-    regmmatch_T	best_regmatch;	    /* startpos/endpos of best match */
+    regmmatch_T	best_regmatch;	    // startpos/endpos of best match
     lpos_T	pos;
     char_u	*line;
     int		had_match = FALSE;
-    char_u	buf_chartab[32];  /* chartab array for syn option iskyeyword */
-
-    /* just in case we are invoked for a keyword */
+    char_u	buf_chartab[32];  // chartab array for syn option iskyeyword
+
+    // just in case we are invoked for a keyword
     if (idx < 0)
 	return;
 
@@ -2843,15 +2841,15 @@ find_endpos(
     else
 	spp_skip = NULL;
 
-    /* Setup external matches for syn_regexec(). */
+    // Setup external matches for syn_regexec().
     unref_extmatch(re_extmatch_in);
     re_extmatch_in = ref_extmatch(start_ext);
 
-    matchcol = startpos->col;	/* start looking for a match at sstart */
-    start_idx = idx;		/* remember the first END pattern. */
-    best_regmatch.startpos[0].col = 0;		/* avoid compiler warning */
-
-    /* use syntax iskeyword option */
+    matchcol = startpos->col;	// start looking for a match at sstart
+    start_idx = idx;		// remember the first END pattern.
+    best_regmatch.startpos[0].col = 0;		// avoid compiler warning
+
+    // use syntax iskeyword option
     save_chartab(buf_chartab);
 
     for (;;)
@@ -2866,7 +2864,7 @@ find_endpos(
 	    int r;
 
 	    spp = &(SYN_ITEMS(syn_block)[idx]);
-	    if (spp->sp_type != SPTYPE_END)	/* past last END pattern */
+	    if (spp->sp_type != SPTYPE_END)	// past last END pattern
 		break;
 	    lc_col -= spp->sp_offsets[SPO_LC_OFF];
 	    if (lc_col < 0)
@@ -2917,34 +2915,34 @@ find_endpos(
 	    {
 		int line_len;
 
-		/* Add offset to skip pattern match */
+		// Add offset to skip pattern match
 		syn_add_end_off(&pos, &regmatch, spp_skip, SPO_ME_OFF, 1);
 
-		/* If the skip pattern goes on to the next line, there is no
-		 * match with an end pattern in this line. */
+		// If the skip pattern goes on to the next line, there is no
+		// match with an end pattern in this line.
 		if (pos.lnum > startpos->lnum)
 		    break;
 
 		line = ml_get_buf(syn_buf, startpos->lnum, FALSE);
 		line_len = (int)STRLEN(line);
 
-		/* take care of an empty match or negative offset */
+		// take care of an empty match or negative offset
 		if (pos.col <= matchcol)
 		    ++matchcol;
 		else if (pos.col <= regmatch.endpos[0].col)
 		    matchcol = pos.col;
 		else
-		    /* Be careful not to jump over the NUL at the end-of-line */
+		    // Be careful not to jump over the NUL at the end-of-line
 		    for (matchcol = regmatch.endpos[0].col;
 			    matchcol < line_len && matchcol < pos.col;
 								   ++matchcol)
 			;
 
-		/* if the skip pattern includes end-of-line, break here */
+		// if the skip pattern includes end-of-line, break here
 		if (matchcol >= line_len)
 		    break;
 
-		continue;	    /* start with first end pattern again */
+		continue;	    // start with first end pattern again
 	    }
 	}
 
@@ -2954,16 +2952,16 @@ find_endpos(
 	 */
 	spp = &(SYN_ITEMS(syn_block)[best_idx]);
 	syn_add_end_off(m_endpos, &best_regmatch, spp, SPO_ME_OFF, 1);
-	/* can't end before the start */
+	// can't end before the start
 	if (m_endpos->lnum == startpos->lnum && m_endpos->col < startpos->col)
 	    m_endpos->col = startpos->col;
 
 	syn_add_end_off(end_endpos, &best_regmatch, spp, SPO_HE_OFF, 1);
-	/* can't end before the start */
+	// can't end before the start
 	if (end_endpos->lnum == startpos->lnum
 					   && end_endpos->col < startpos->col)
 	    end_endpos->col = startpos->col;
-	/* can't end after the match */
+	// can't end after the match
 	limit_pos(end_endpos, m_endpos);
 
 	/*
@@ -2984,14 +2982,14 @@ find_endpos(
 	    }
 	    hl_endpos->col += spp->sp_offsets[SPO_RE_OFF];
 
-	    /* can't end before the start */
+	    // can't end before the start
 	    if (hl_endpos->lnum == startpos->lnum
 					    && hl_endpos->col < startpos->col)
 		hl_endpos->col = startpos->col;
 	    limit_pos(hl_endpos, m_endpos);
 
-	    /* now the match ends where the highlighting ends, it is turned
-	     * into the matchgroup for the end */
+	    // now the match ends where the highlighting ends, it is turned
+	    // into the matchgroup for the end
 	    *m_endpos = *hl_endpos;
 	}
 	else
@@ -3006,13 +3004,13 @@ find_endpos(
 	break;
     }
 
-    /* no match for an END pattern in this line */
+    // no match for an END pattern in this line
     if (!had_match)
 	m_endpos->lnum = 0;
 
     restore_chartab(buf_chartab);
 
-    /* Remove external matches. */
+    // Remove external matches.
     unref_extmatch(re_extmatch_in);
     re_extmatch_in = NULL;
 }
@@ -3048,11 +3046,11 @@ limit_pos_zero(
  */
     static void
 syn_add_end_off(
-    lpos_T	*result,	/* returned position */
-    regmmatch_T	*regmatch,	/* start/end of match */
-    synpat_T	*spp,		/* matched pattern */
-    int		idx,		/* index of offset */
-    int		extra)		/* extra chars for offset to start */
+    lpos_T	*result,	// returned position
+    regmmatch_T	*regmatch,	// start/end of match
+    synpat_T	*spp,		// matched pattern
+    int		idx,		// index of offset
+    int		extra)		// extra chars for offset to start
 {
     int		col;
     int		off;
@@ -3071,8 +3069,8 @@ syn_add_end_off(
 	col = regmatch->endpos[0].col;
 	off = spp->sp_offsets[idx];
     }
-    /* Don't go past the end of the line.  Matters for "rs=e+2" when there
-     * is a matchgroup. Watch out for match with last NL in the buffer. */
+    // Don't go past the end of the line.  Matters for "rs=e+2" when there
+    // is a matchgroup. Watch out for match with last NL in the buffer.
     if (result->lnum > syn_buf->b_ml.ml_line_count)
 	col = 0;
     else if (off != 0)
@@ -3100,11 +3098,11 @@ syn_add_end_off(
  */
     static void
 syn_add_start_off(
-    lpos_T	*result,	/* returned position */
-    regmmatch_T	*regmatch,	/* start/end of match */
+    lpos_T	*result,	// returned position
+    regmmatch_T	*regmatch,	// start/end of match
     synpat_T	*spp,
     int		idx,
-    int		extra)	    /* extra chars for offset to end */
+    int		extra)	    // extra chars for offset to end
 {
     int		col;
     int		off;
@@ -3125,7 +3123,7 @@ syn_add_start_off(
     }
     if (result->lnum > syn_buf->b_ml.ml_line_count)
     {
-	/* a "\n" at the end of the pattern may take us below the last line */
+	// a "\n" at the end of the pattern may take us below the last line
 	result->lnum = syn_buf->b_ml.ml_line_count;
 	col = (int)STRLEN(ml_get_buf(syn_buf, result->lnum, FALSE));
     }
@@ -3231,23 +3229,23 @@ syn_regexec(
     static int
 check_keyword_id(
     char_u	*line,
-    int		startcol,	/* position in line to check for keyword */
-    int		*endcolp,	/* return: character after found keyword */
-    long	*flagsp,	/* return: flags of matching keyword */
-    short	**next_listp,	/* return: next_list of matching keyword */
-    stateitem_T	*cur_si,	/* item at the top of the stack */
-    int		*ccharp UNUSED)	/* conceal substitution char */
+    int		startcol,	// position in line to check for keyword
+    int		*endcolp,	// return: character after found keyword
+    long	*flagsp,	// return: flags of matching keyword
+    short	**next_listp,	// return: next_list of matching keyword
+    stateitem_T	*cur_si,	// item at the top of the stack
+    int		*ccharp UNUSED)	// conceal substitution char
 {
     keyentry_T	*kp;
     char_u	*kwp;
     int		round;
     int		kwlen;
-    char_u	keyword[MAXKEYWLEN + 1]; /* assume max. keyword len is 80 */
+    char_u	keyword[MAXKEYWLEN + 1]; // assume max. keyword len is 80
     hashtab_T	*ht;
     hashitem_T	*hi;
 
-    /* Find first character after the keyword.  First character was already
-     * checked. */
+    // Find first character after the keyword.  First character was already
+    // checked.
     kwp = line + startcol;
     kwlen = 0;
     do
@@ -3278,7 +3276,7 @@ check_keyword_id(
 	ht = round == 1 ? &syn_block->b_keywtab : &syn_block->b_keywtab_ic;
 	if (ht->ht_used == 0)
 	    continue;
-	if (round == 2)	/* ignore case */
+	if (round == 2)	// ignore case
 	    (void)str_foldcase(kwp, kwlen, keyword, MAXKEYWLEN + 1);
 
 	/*
@@ -3407,7 +3405,7 @@ syn_cmd_spell(exarg_T *eap, int syncing 
 	return;
     }
 
-    /* assume spell checking changed, force a redraw */
+    // assume spell checking changed, force a redraw
     redraw_win_later(curwin, NOT_VALID);
 }
 
@@ -3470,27 +3468,27 @@ syntax_clear(synblock_T *block)
 {
     int i;
 
-    block->b_syn_error = FALSE;	    /* clear previous error */
+    block->b_syn_error = FALSE;	    // clear previous error
 #ifdef FEAT_RELTIME
-    block->b_syn_slow = FALSE;	    /* clear previous timeout */
+    block->b_syn_slow = FALSE;	    // clear previous timeout
 #endif
-    block->b_syn_ic = FALSE;	    /* Use case, by default */
-    block->b_syn_spell = SYNSPL_DEFAULT; /* default spell checking */
+    block->b_syn_ic = FALSE;	    // Use case, by default
+    block->b_syn_spell = SYNSPL_DEFAULT; // default spell checking
     block->b_syn_containedin = FALSE;
 #ifdef FEAT_CONCEAL
     block->b_syn_conceal = FALSE;
 #endif
 
-    /* free the keywords */
+    // free the keywords
     clear_keywtab(&block->b_keywtab);
     clear_keywtab(&block->b_keywtab_ic);
 
-    /* free the syntax patterns */
+    // free the syntax patterns
     for (i = block->b_syn_patterns.ga_len; --i >= 0; )
 	syn_clear_pattern(block, i);
     ga_clear(&block->b_syn_patterns);
 
-    /* free the syntax clusters */
+    // free the syntax clusters
     for (i = block->b_syn_clusters.ga_len; --i >= 0; )
 	syn_clear_cluster(block, i);
     ga_clear(&block->b_syn_clusters);
@@ -3510,11 +3508,11 @@ syntax_clear(synblock_T *block)
 #endif
     clear_string_option(&block->b_syn_isk);
 
-    /* free the stored states */
+    // free the stored states
     syn_stack_free_all(block);
     invalidate_current_state();
 
-    /* Reset the counter for ":syn include" */
+    // Reset the counter for ":syn include"
     running_syn_inc_tag = 0;
 }
 
@@ -3540,7 +3538,7 @@ syntax_sync_clear(void)
 {
     int i;
 
-    /* free the syntax patterns */
+    // free the syntax patterns
     for (i = curwin->w_s->b_syn_patterns.ga_len; --i >= 0; )
 	if (SYN_ITEMS(curwin->w_s)[i].sp_syncing)
 	    syn_remove_pattern(curwin->w_s, i);
@@ -3555,7 +3553,7 @@ syntax_sync_clear(void)
     VIM_CLEAR(curwin->w_s->b_syn_linecont_pat);
     clear_string_option(&curwin->w_s->b_syn_isk);
 
-    syn_stack_free_all(curwin->w_s);	/* Need to recompute all syntax. */
+    syn_stack_free_all(curwin->w_s);	// Need to recompute all syntax.
 }
 
 /*
@@ -3588,7 +3586,7 @@ syn_clear_pattern(synblock_T *block, int
 {
     vim_free(SYN_ITEMS(block)[i].sp_pattern);
     vim_regfree(SYN_ITEMS(block)[i].sp_prog);
-    /* Only free sp_cont_list and sp_next_list of first start pattern */
+    // Only free sp_cont_list and sp_next_list of first start pattern
     if (i == 0 || SYN_ITEMS(block)[i - 1].sp_type != SPTYPE_START)
     {
 	vim_free(SYN_ITEMS(block)[i].sp_cont_list);
@@ -3689,7 +3687,7 @@ syn_cmd_clear(exarg_T *eap, int syncing)
 	}
     }
     redraw_curbuf_later(SOME_VALID);
-    syn_stack_free_all(curwin->w_s);		/* Need to recompute all syntax. */
+    syn_stack_free_all(curwin->w_s);		// Need to recompute all syntax.
 }
 
 /*
@@ -3701,14 +3699,14 @@ syn_clear_one(int id, int syncing)
     synpat_T	*spp;
     int		idx;
 
-    /* Clear keywords only when not ":syn sync clear group-name" */
+    // Clear keywords only when not ":syn sync clear group-name"
     if (!syncing)
     {
 	(void)syn_clear_keyword(id, &curwin->w_s->b_keywtab);
 	(void)syn_clear_keyword(id, &curwin->w_s->b_keywtab_ic);
     }
 
-    /* clear the patterns for "id" */
+    // clear the patterns for "id"
     for (idx = curwin->w_s->b_syn_patterns.ga_len; --idx >= 0; )
     {
 	spp = &(SYN_ITEMS(curwin->w_s)[idx]);
@@ -3792,7 +3790,7 @@ syn_cmd_onoff(exarg_T *eap, char *name)
     static void
 syn_cmd_list(
     exarg_T	*eap,
-    int		syncing)	    /* when TRUE: list syncing items */
+    int		syncing)	    // when TRUE: list syncing items
 {
     char_u	*arg = eap->arg;
     int		id;
@@ -3932,8 +3930,8 @@ static void syn_list_flags(struct name_l
     static void
 syn_list_one(
     int		id,
-    int		syncing,	    /* when TRUE: list syncing items */
-    int		link_only)	    /* when TRUE; list link-only too */
+    int		syncing,	    // when TRUE: list syncing items
+    int		link_only)	    // when TRUE; list link-only too
 {
     int		attr;
     int		idx;
@@ -3963,9 +3961,9 @@ syn_list_one(
 		    {0, NULL}
 		};
 
-    attr = HL_ATTR(HLF_D);		/* highlight like directories */
-
-    /* list the keywords for "id" */
+    attr = HL_ATTR(HLF_D);		// highlight like directories
+
+    // list the keywords for "id"
     if (!syncing)
     {
 	did_header = syn_list_keywords(id, &curwin->w_s->b_keywtab, FALSE, attr);
@@ -3973,7 +3971,7 @@ syn_list_one(
 							    did_header, attr);
     }
 
-    /* list the patterns for "id" */
+    // list the patterns for "id"
     for (idx = 0; idx < curwin->w_s->b_syn_patterns.ga_len && !got_int; ++idx)
     {
 	spp = &(SYN_ITEMS(curwin->w_s)[idx]);
@@ -4030,7 +4028,7 @@ syn_list_one(
 	}
     }
 
-    /* list the link, if there is one */
+    // list the link, if there is one
     if (highlight_link_id(id - 1) && (did_header || link_only) && !got_int)
     {
 	(void)syn_list_header(did_header, 999, id);
@@ -4061,13 +4059,13 @@ syn_list_cluster(int id)
 {
     int	    endcol = 15;
 
-    /* slight hack:  roughly duplicate the guts of syn_list_header() */
+    // slight hack:  roughly duplicate the guts of syn_list_header()
     msg_putchar('\n');
     msg_outtrans(SYN_CLSTR(curwin->w_s)[id].scl_name);
 
-    if (msg_col >= endcol)	/* output at least one space */
+    if (msg_col >= endcol)	// output at least one space
 	endcol = msg_col + 1;
-    if (Columns <= endcol)	/* avoid hang for tiny window */
+    if (Columns <= endcol)	// avoid hang for tiny window
 	endcol = Columns - 1;
 
     msg_advance(endcol);
@@ -4135,7 +4133,7 @@ put_pattern(
     static char	*sepchars = "/+=-#@\"|'^&";
     int		i;
 
-    /* May have to write "matchgroup=group" */
+    // May have to write "matchgroup=group"
     if (last_matchgroup != spp->sp_syn_match_id)
     {
 	last_matchgroup = spp->sp_syn_match_id;
@@ -4148,22 +4146,22 @@ put_pattern(
 	msg_putchar(' ');
     }
 
-    /* output the name of the pattern and an '=' or ' ' */
+    // output the name of the pattern and an '=' or ' '
     msg_puts_attr(s, attr);
     msg_putchar(c);
 
-    /* output the pattern, in between a char that is not in the pattern */
+    // output the pattern, in between a char that is not in the pattern
     for (i = 0; vim_strchr(spp->sp_pattern, sepchars[i]) != NULL; )
 	if (sepchars[++i] == NUL)
 	{
-	    i = 0;	/* no good char found, just use the first one */
+	    i = 0;	// no good char found, just use the first one
 	    break;
 	}
     msg_putchar(sepchars[i]);
     msg_outtrans(spp->sp_pattern);
     msg_putchar(sepchars[i]);
 
-    /* output any pattern options */
+    // output any pattern options
     first = TRUE;
     for (i = 0; i < SPO_COUNT; ++i)
     {
@@ -4171,7 +4169,7 @@ put_pattern(
 	if (spp->sp_off_flags & (mask + (mask << SPO_COUNT)))
 	{
 	    if (!first)
-		msg_putchar(',');	/* separate with commas */
+		msg_putchar(',');	// separate with commas
 	    msg_puts(spo_name_tab[i]);
 	    n = spp->sp_offsets[i];
 	    if (i != SPO_LC_OFF)
@@ -4199,7 +4197,7 @@ put_pattern(
 syn_list_keywords(
     int		id,
     hashtab_T	*ht,
-    int		did_header,		/* header has already been printed */
+    int		did_header,		// header has already been printed
     int		attr)
 {
     int		outlen;
@@ -4236,7 +4234,7 @@ syn_list_keywords(
 			outlen = 9999;
 		    else
 			outlen = (int)STRLEN(kp->keyword);
-		    /* output "contained" and "nextgroup" on each line */
+		    // output "contained" and "nextgroup" on each line
 		    if (syn_list_header(did_header, outlen, id))
 		    {
 			prev_contained = 0;
@@ -4375,11 +4373,11 @@ clear_keywtab(hashtab_T *ht)
  */
     static void
 add_keyword(
-    char_u	*name,	    /* name of keyword */
-    int		id,	    /* group ID for this keyword */
-    int		flags,	    /* flags for this keyword */
-    short	*cont_in_list, /* containedin for this keyword */
-    short	*next_list, /* nextgroup for this keyword */
+    char_u	*name,	    // name of keyword
+    int		id,	    // group ID for this keyword
+    int		flags,	    // flags for this keyword
+    short	*cont_in_list, // containedin for this keyword
+    short	*next_list, // nextgroup for this keyword
     int		conceal_char)
 {
     keyentry_T	*kp;
@@ -4416,13 +4414,13 @@ add_keyword(
     hi = hash_lookup(ht, kp->keyword, hash);
     if (HASHITEM_EMPTY(hi))
     {
-	/* new keyword, add to hashtable */
+	// new keyword, add to hashtable
 	kp->ke_next = NULL;
 	hash_add_item(ht, hi, kp->keyword, hash);
     }
     else
     {
-	/* keyword already exists, prepend to list */
+	// keyword already exists, prepend to list
 	kp->ke_next = HI2KE(hi);
 	hi->hi_key = KE2HIKEY(kp);
     }
@@ -4435,8 +4433,8 @@ add_keyword(
  */
     static char_u *
 get_group_name(
-    char_u	*arg,		/* start of the argument */
-    char_u	**name_end)	/* pointer to end of the name */
+    char_u	*arg,		// start of the argument
+    char_u	**name_end)	// pointer to end of the name
 {
     char_u	*rest;
 
@@ -4462,10 +4460,10 @@ get_group_name(
  */
     static char_u *
 get_syn_options(
-    char_u	    *arg,		/* next argument to be checked */
-    syn_opt_arg_T   *opt,		/* various things */
+    char_u	    *arg,		// next argument to be checked
+    syn_opt_arg_T   *opt,		// various things
     int		    *conceal_char UNUSED,
-    int		    skip)		/* TRUE if skipping over command */
+    int		    skip)		// TRUE if skipping over command
 {
     char_u	*gname_start, *gname;
     int		syn_id;
@@ -4500,7 +4498,7 @@ get_syn_options(
 		};
     static char *first_letters = "cCoOkKeEtTsSgGdDfFnN";
 
-    if (arg == NULL)		/* already detected error */
+    if (arg == NULL)		// already detected error
 	return NULL;
 
 #ifdef FEAT_CONCEAL
@@ -4533,12 +4531,12 @@ get_syn_options(
 			&& (flagtab[fidx].flags == HL_DISPLAY
 			    || flagtab[fidx].flags == HL_FOLD
 			    || flagtab[fidx].flags == HL_EXTEND))
-		    /* treat "display", "fold" and "extend" as a keyword */
+		    // treat "display", "fold" and "extend" as a keyword
 		    fidx = -1;
 		break;
 	    }
 	}
-	if (fidx < 0)	    /* no match found */
+	if (fidx < 0)	    // no match found
 	    break;
 
 	if (flagtab[fidx].argtype == 1)
@@ -4563,7 +4561,7 @@ get_syn_options(
 	}
 	else if (flagtab[fidx].argtype == 11 && arg[5] == '=')
 	{
-	    /* cchar=? */
+	    // cchar=?
 	    if (has_mbyte)
 	    {
 #ifdef FEAT_CONCEAL
@@ -4634,7 +4632,7 @@ get_syn_options(
 #ifdef FEAT_FOLDING
 	    else if (flagtab[fidx].flags == HL_FOLD
 						&& foldmethodIsSyntax(curwin))
-		/* Need to update folds later. */
+		// Need to update folds later.
 		foldUpdateAll(curwin);
 #endif
 	}
@@ -4656,7 +4654,7 @@ syn_incl_toplevel(int id, int *flagsp)
     *flagsp |= HL_CONTAINED;
     if (curwin->w_s->b_syn_topgrp >= SYNID_CLUSTER)
     {
-	/* We have to alloc this, because syn_combine_list() will free it. */
+	// We have to alloc this, because syn_combine_list() will free it.
 	short	    *grp_list = ALLOC_MULT(short, 2);
 	int	    tlg_id = curwin->w_s->b_syn_topgrp - SYNID_CLUSTER;
 
@@ -4701,7 +4699,7 @@ syn_cmd_include(exarg_T *eap, int syncin
 	sgl_id = syn_check_cluster(arg, (int)(group_name_end - arg));
 	if (sgl_id == 0)
 	    return;
-	/* separate_nextcmd() and expand_filename() depend on this */
+	// separate_nextcmd() and expand_filename() depend on this
 	eap->arg = rest;
     }
 
@@ -4713,9 +4711,9 @@ syn_cmd_include(exarg_T *eap, int syncin
     separate_nextcmd(eap);
     if (*eap->arg == '<' || *eap->arg == '$' || mch_isFullName(eap->arg))
     {
-	/* For an absolute path, "$VIM/..." or "<sfile>.." we ":source" the
-	 * file.  Need to expand the file name first.  In other cases
-	 * ":runtime!" is used. */
+	// For an absolute path, "$VIM/..." or "<sfile>.." we ":source" the
+	// file.  Need to expand the file name first.  In other cases
+	// ":runtime!" is used.
 	source = TRUE;
 	if (expand_filename(eap, syn_cmdlinep, &errormsg) == FAIL)
 	{
@@ -4771,7 +4769,7 @@ syn_cmd_keyword(exarg_T *eap, int syncin
 	else
 	    syn_id = syn_check_group(arg, (int)(group_name_end - arg));
 	if (syn_id != 0)
-	    /* allocate a buffer, for removing backslashes in the keyword */
+	    // allocate a buffer, for removing backslashes in the keyword
 	    keyword_copy = alloc(STRLEN(rest) + 1);
 	if (keyword_copy != NULL)
 	{
@@ -4795,7 +4793,7 @@ syn_cmd_keyword(exarg_T *eap, int syncin
 								    eap->skip);
 		if (rest == NULL || ends_excmd(*rest))
 		    break;
-		/* Copy the keyword, removing backslashes, and add a NUL. */
+		// Copy the keyword, removing backslashes, and add a NUL.
 		while (*rest != NUL && !VIM_ISWHITE(*rest))
 		{
 		    if (*rest == '\\' && rest[1] != NUL)
@@ -4808,7 +4806,7 @@ syn_cmd_keyword(exarg_T *eap, int syncin
 
 	    if (!eap->skip)
 	    {
-		/* Adjust flags for use of ":syn include". */
+		// Adjust flags for use of ":syn include".
 		syn_incl_toplevel(syn_id, &syn_opt_arg.flags);
 
 		/*
@@ -4838,7 +4836,7 @@ syn_cmd_keyword(exarg_T *eap, int syncin
 								kw, &p[2]);
 				goto error;
 			    }
-			    kw = p + 1;		/* skip over the "]" */
+			    kw = p + 1;		// skip over the "]"
 			    break;
 			}
 			if (has_mbyte)
@@ -4869,7 +4867,7 @@ error:
 	semsg(_(e_invarg2), arg);
 
     redraw_curbuf_later(SOME_VALID);
-    syn_stack_free_all(curwin->w_s);		/* Need to recompute all syntax. */
+    syn_stack_free_all(curwin->w_s);		// Need to recompute all syntax.
 }
 
 /*
@@ -4880,22 +4878,22 @@ error:
     static void
 syn_cmd_match(
     exarg_T	*eap,
-    int		syncing)	    /* TRUE for ":syntax sync match .. " */
+    int		syncing)	    // TRUE for ":syntax sync match .. "
 {
     char_u	*arg = eap->arg;
     char_u	*group_name_end;
     char_u	*rest;
-    synpat_T	item;		/* the item found in the line */
+    synpat_T	item;		// the item found in the line
     int		syn_id;
     int		idx;
     syn_opt_arg_T syn_opt_arg;
     int		sync_idx = 0;
     int		conceal_char = NUL;
 
-    /* Isolate the group name, check for validity */
+    // Isolate the group name, check for validity
     rest = get_group_name(arg, &group_name_end);
 
-    /* Get options before the pattern */
+    // Get options before the pattern
     syn_opt_arg.flags = 0;
     syn_opt_arg.keyword = FALSE;
     syn_opt_arg.sync_idx = syncing ? &sync_idx : NULL;
@@ -4905,17 +4903,17 @@ syn_cmd_match(
     syn_opt_arg.next_list = NULL;
     rest = get_syn_options(rest, &syn_opt_arg, &conceal_char, eap->skip);
 
-    /* get the pattern. */
+    // get the pattern.
     init_syn_patterns();
     vim_memset(&item, 0, sizeof(item));
     rest = get_syn_pattern(rest, &item);
     if (vim_regcomp_had_eol() && !(syn_opt_arg.flags & HL_EXCLUDENL))
 	syn_opt_arg.flags |= HL_HAS_EOL;
 
-    /* Get options after the pattern */
+    // Get options after the pattern
     rest = get_syn_options(rest, &syn_opt_arg, &conceal_char, eap->skip);
 
-    if (rest != NULL)		/* all arguments are valid */
+    if (rest != NULL)		// all arguments are valid
     {
 	/*
 	 * Check for trailing command and illegal trailing arguments.
@@ -4950,7 +4948,7 @@ syn_cmd_match(
 	    SYN_ITEMS(curwin->w_s)[idx].sp_next_list = syn_opt_arg.next_list;
 	    ++curwin->w_s->b_syn_patterns.ga_len;
 
-	    /* remember that we found a match for syncing on */
+	    // remember that we found a match for syncing on
 	    if (syn_opt_arg.flags & (HL_SYNC_HERE|HL_SYNC_THERE))
 		curwin->w_s->b_syn_sync_flags |= SF_MATCH;
 #ifdef FEAT_FOLDING
@@ -4959,8 +4957,8 @@ syn_cmd_match(
 #endif
 
 	    redraw_curbuf_later(SOME_VALID);
-	    syn_stack_free_all(curwin->w_s);	/* Need to recompute all syntax. */
-	    return;	/* don't free the progs and patterns now */
+	    syn_stack_free_all(curwin->w_s);	// Need to recompute all syntax.
+	    return;	// don't free the progs and patterns now
 	}
     }
 
@@ -4984,11 +4982,11 @@ syn_cmd_match(
     static void
 syn_cmd_region(
     exarg_T	*eap,
-    int		syncing)	    /* TRUE for ":syntax sync region .." */
+    int		syncing)	    // TRUE for ":syntax sync region .."
 {
     char_u		*arg = eap->arg;
     char_u		*group_name_end;
-    char_u		*rest;			/* next arg, NULL on error */
+    char_u		*rest;			// next arg, NULL on error
     char_u		*key_end;
     char_u		*key = NULL;
     char_u		*p;
@@ -4999,24 +4997,24 @@ syn_cmd_region(
 #define ITEM_MATCHGROUP	    3
     struct pat_ptr
     {
-	synpat_T	*pp_synp;		/* pointer to syn_pattern */
-	int		pp_matchgroup_id;	/* matchgroup ID */
-	struct pat_ptr	*pp_next;		/* pointer to next pat_ptr */
+	synpat_T	*pp_synp;		// pointer to syn_pattern
+	int		pp_matchgroup_id;	// matchgroup ID
+	struct pat_ptr	*pp_next;		// pointer to next pat_ptr
     }			*(pat_ptrs[3]);
-					/* patterns found in the line */
+					// patterns found in the line
     struct pat_ptr	*ppp;
     struct pat_ptr	*ppp_next;
-    int			pat_count = 0;		/* nr of syn_patterns found */
+    int			pat_count = 0;		// nr of syn_patterns found
     int			syn_id;
     int			matchgroup_id = 0;
-    int			not_enough = FALSE;	/* not enough arguments */
-    int			illegal = FALSE;	/* illegal arguments */
+    int			not_enough = FALSE;	// not enough arguments
+    int			illegal = FALSE;	// illegal arguments
     int			success = FALSE;
     int			idx;
     syn_opt_arg_T	syn_opt_arg;
     int			conceal_char = NUL;
 
-    /* Isolate the group name, check for validity */
+    // Isolate the group name, check for validity
     rest = get_group_name(arg, &group_name_end);
 
     pat_ptrs[0] = NULL;
@@ -5038,18 +5036,18 @@ syn_cmd_region(
      */
     while (rest != NULL && !ends_excmd(*rest))
     {
-	/* Check for option arguments */
+	// Check for option arguments
 	rest = get_syn_options(rest, &syn_opt_arg, &conceal_char, eap->skip);
 	if (rest == NULL || ends_excmd(*rest))
 	    break;
 
-	/* must be a pattern or matchgroup then */
+	// must be a pattern or matchgroup then
 	key_end = rest;
 	while (*key_end && !VIM_ISWHITE(*key_end) && *key_end != '=')
 	    ++key_end;
 	vim_free(key);
 	key = vim_strnsave_up(rest, (int)(key_end - rest));
-	if (key == NULL)			/* out of memory */
+	if (key == NULL)			// out of memory
 	{
 	    rest = NULL;
 	    break;
@@ -5062,7 +5060,7 @@ syn_cmd_region(
 	    item = ITEM_END;
 	else if (STRCMP(key, "SKIP") == 0)
 	{
-	    if (pat_ptrs[ITEM_SKIP] != NULL)	/* one skip pattern allowed */
+	    if (pat_ptrs[ITEM_SKIP] != NULL)	// one skip pattern allowed
 	    {
 		illegal = TRUE;
 		break;
@@ -5126,7 +5124,7 @@ syn_cmd_region(
 	    /*
 	     * Get the syntax pattern and the following offset(s).
 	     */
-	    /* Enable the appropriate \z specials. */
+	    // Enable the appropriate \z specials.
 	    if (item == ITEM_START)
 		reg_do_extmatch = REX_SET;
 	    else if (item == ITEM_SKIP || item == ITEM_END)
@@ -5211,8 +5209,8 @@ syn_cmd_region(
 	    }
 
 	    redraw_curbuf_later(SOME_VALID);
-	    syn_stack_free_all(curwin->w_s);	/* Need to recompute all syntax. */
-	    success = TRUE;	    /* don't free the progs and patterns now */
+	    syn_stack_free_all(curwin->w_s);	// Need to recompute all syntax.
+	    success = TRUE;	    // don't free the progs and patterns now
 	}
     }
 
@@ -5390,7 +5388,7 @@ syn_scl_name2id(char_u *name)
     int		i;
     char_u	*name_u;
 
-    /* Avoid using stricmp() too much, it's slow on some systems */
+    // Avoid using stricmp() too much, it's slow on some systems
     name_u = vim_strsave_up(name);
     if (name_u == NULL)
 	return 0;
@@ -5437,7 +5435,7 @@ syn_check_cluster(char_u *pp, int len)
 	return 0;
 
     id = syn_scl_name2id(name);
-    if (id == 0)			/* doesn't exist yet */
+    if (id == 0)			// doesn't exist yet
 	id = syn_add_cluster(name);
     else
 	vim_free(name);
@@ -5563,7 +5561,7 @@ syn_cmd_cluster(exarg_T *eap, int syncin
 	if (got_clstr)
 	{
 	    redraw_curbuf_later(SOME_VALID);
-	    syn_stack_free_all(curwin->w_s);	/* Need to recompute all. */
+	    syn_stack_free_all(curwin->w_s);	// Need to recompute all.
 	}
     }
 
@@ -5596,21 +5594,21 @@ get_syn_pattern(char_u *arg, synpat_T *c
     int		idx;
     char_u	*cpo_save;
 
-    /* need at least three chars */
+    // need at least three chars
     if (arg == NULL || arg[0] == NUL || arg[1] == NUL || arg[2] == NUL)
 	return NULL;
 
     end = skip_regexp(arg + 1, *arg, TRUE, NULL);
-    if (*end != *arg)			    /* end delimiter not found */
+    if (*end != *arg)			    // end delimiter not found
     {
 	semsg(_("E401: Pattern delimiter not found: %s"), arg);
 	return NULL;
     }
-    /* store the pattern and compiled regexp program */
+    // store the pattern and compiled regexp program
     if ((ci->sp_pattern = vim_strnsave(arg + 1, (int)(end - arg - 1))) == NULL)
 	return NULL;
 
-    /* Make 'cpoptions' empty, to avoid the 'l' flag */
+    // Make 'cpoptions' empty, to avoid the 'l' flag
     cpo_save = p_cpo;
     p_cpo = (char_u *)"";
     ci->sp_prog = vim_regcomp(ci->sp_pattern, RE_MAGIC);
@@ -5646,30 +5644,30 @@ get_syn_pattern(char_u *arg, synpat_T *c
 	    if (idx >= 0)
 	    {
 		ci->sp_off_flags |= (1 << idx);
-		if (idx == SPO_LC_OFF)	    /* lc=99 */
+		if (idx == SPO_LC_OFF)	    // lc=99
 		{
 		    end += 3;
 		    *p = getdigits(&end);
 
-		    /* "lc=" offset automatically sets "ms=" offset */
+		    // "lc=" offset automatically sets "ms=" offset
 		    if (!(ci->sp_off_flags & (1 << SPO_MS_OFF)))
 		    {
 			ci->sp_off_flags |= (1 << SPO_MS_OFF);
 			ci->sp_offsets[SPO_MS_OFF] = *p;
 		    }
 		}
-		else			    /* yy=x+99 */
+		else			    // yy=x+99
 		{
 		    end += 4;
 		    if (*end == '+')
 		    {
 			++end;
-			*p = getdigits(&end);		/* positive offset */
+			*p = getdigits(&end);		// positive offset
 		    }
 		    else if (*end == '-')
 		    {
 			++end;
-			*p = -getdigits(&end);		/* negative offset */
+			*p = -getdigits(&end);		// negative offset
 		    }
 		}
 		if (*end != ',')
@@ -5766,7 +5764,7 @@ syn_cmd_sync(exarg_T *eap, int syncing U
 	}
 	else if (STRCMP(key, "LINECONT") == 0)
 	{
-	    if (*next_arg == NUL)	   /* missing pattern */
+	    if (*next_arg == NUL)	   // missing pattern
 	    {
 		illegal = TRUE;
 		break;
@@ -5778,7 +5776,7 @@ syn_cmd_sync(exarg_T *eap, int syncing U
 		break;
 	    }
 	    arg_end = skip_regexp(next_arg + 1, *next_arg, TRUE, NULL);
-	    if (*arg_end != *next_arg)	    /* end delimiter not found */
+	    if (*arg_end != *next_arg)	    // end delimiter not found
 	    {
 		illegal = TRUE;
 		break;
@@ -5786,7 +5784,7 @@ syn_cmd_sync(exarg_T *eap, int syncing U
 
 	    if (!eap->skip)
 	    {
-		/* store the pattern and compiled regexp program */
+		// store the pattern and compiled regexp program
 		if ((curwin->w_s->b_syn_linecont_pat = vim_strnsave(next_arg + 1,
 				      (int)(arg_end - next_arg - 1))) == NULL)
 		{
@@ -5795,7 +5793,7 @@ syn_cmd_sync(exarg_T *eap, int syncing U
 		}
 		curwin->w_s->b_syn_linecont_ic = curwin->w_s->b_syn_ic;
 
-		/* Make 'cpoptions' empty, to avoid the 'l' flag */
+		// Make 'cpoptions' empty, to avoid the 'l' flag
 		cpo_save = p_cpo;
 		p_cpo = (char_u *)"";
 		curwin->w_s->b_syn_linecont_prog =
@@ -5837,7 +5835,7 @@ syn_cmd_sync(exarg_T *eap, int syncing U
     {
 	eap->nextcmd = check_nextcmd(arg_start);
 	redraw_curbuf_later(SOME_VALID);
-	syn_stack_free_all(curwin->w_s);	/* Need to recompute all syntax. */
+	syn_stack_free_all(curwin->w_s);	// Need to recompute all syntax.
     }
 }
 
@@ -5851,9 +5849,9 @@ syn_cmd_sync(exarg_T *eap, int syncing U
     static int
 get_id_list(
     char_u	**arg,
-    int		keylen,		/* length of keyword */
-    short	**list,		/* where to store the resulting list, if not
-				   NULL, the list is silently skipped! */
+    int		keylen,		// length of keyword
+    short	**list,		// where to store the resulting list, if not
+				// NULL, the list is silently skipped!
     int		skip)
 {
     char_u	*p = NULL;
@@ -5901,7 +5899,7 @@ get_id_list(
 	{
 	    for (end = p; *end && !VIM_ISWHITE(*end) && *end != ','; ++end)
 		;
-	    name = alloc(end - p + 3);	    /* leave room for "^$" */
+	    name = alloc(end - p + 3);	    // leave room for "^$"
 	    if (name == NULL)
 	    {
 		failed = TRUE;
@@ -5974,10 +5972,10 @@ get_id_list(
 			{
 			    if (round == 2)
 			    {
-				/* Got more items than expected; can happen
-				 * when adding items that match:
-				 * "contains=a.*b,axb".
-				 * Go back to first round */
+				// Got more items than expected; can happen
+				// when adding items that match:
+				// "contains=a.*b,axb".
+				// Go back to first round
 				if (count >= total_count)
 				{
 				    vim_free(retval);
@@ -5987,7 +5985,7 @@ get_id_list(
 				    retval[count] = i + 1;
 			    }
 			    ++count;
-			    id = -1;	    /* remember that we found one */
+			    id = -1;	    // remember that we found one
 			}
 		    }
 		    vim_regfree(regmatch.regprog);
@@ -6004,7 +6002,7 @@ get_id_list(
 	    {
 		if (round == 2)
 		{
-		    /* Got more items than expected, go back to first round */
+		    // Got more items than expected, go back to first round
 		    if (count >= total_count)
 		    {
 			vim_free(retval);
@@ -6018,7 +6016,7 @@ get_id_list(
 	    p = skipwhite(end);
 	    if (*p != ',')
 		break;
-	    p = skipwhite(p + 1);	/* skip comma in between arguments */
+	    p = skipwhite(p + 1);	// skip comma in between arguments
 	}
 	if (failed)
 	    break;
@@ -6027,7 +6025,7 @@ get_id_list(
 	    retval = ALLOC_MULT(short, count + 1);
 	    if (retval == NULL)
 		break;
-	    retval[count] = 0;	    /* zero means end of the list */
+	    retval[count] = 0;	    // zero means end of the list
 	    total_count = count;
 	}
     }
@@ -6042,7 +6040,7 @@ get_id_list(
     if (*list == NULL)
 	*list = retval;
     else
-	vim_free(retval);	/* list already found, don't overwrite it */
+	vim_free(retval);	// list already found, don't overwrite it
 
     return OK;
 }
@@ -6079,10 +6077,10 @@ copy_id_list(short *list)
  */
     static int
 in_id_list(
-    stateitem_T	*cur_si,	/* current item or NULL */
-    short	*list,		/* id list */
-    struct sp_syn *ssp,		/* group id and ":syn include" tag of group */
-    int		contained)	/* group id is contained */
+    stateitem_T	*cur_si,	// current item or NULL
+    short	*list,		// id list
+    struct sp_syn *ssp,		// group id and ":syn include" tag of group
+    int		contained)	// group id is contained
 {
     int		retval;
     short	*scl_list;
@@ -6091,16 +6089,16 @@ in_id_list(
     static int	depth = 0;
     int		r;
 
-    /* If ssp has a "containedin" list and "cur_si" is in it, return TRUE. */
+    // If ssp has a "containedin" list and "cur_si" is in it, return TRUE.
     if (cur_si != NULL && ssp->cont_in_list != NULL
 					    && !(cur_si->si_flags & HL_MATCH))
     {
-	/* Ignore transparent items without a contains argument.  Double check
-	 * that we don't go back past the first one. */
+	// Ignore transparent items without a contains argument.  Double check
+	// that we don't go back past the first one.
 	while ((cur_si->si_flags & HL_TRANS_CONT)
 		&& cur_si > (stateitem_T *)(current_state.ga_data))
 	    --cur_si;
-	/* cur_si->si_idx is -1 for keywords, these never contain anything. */
+	// cur_si->si_idx is -1 for keywords, these never contain anything.
 	if (cur_si->si_idx >= 0 && in_id_list(NULL, ssp->cont_in_list,
 		&(SYN_ITEMS(syn_block)[cur_si->si_idx].sp_syn),
 		  SYN_ITEMS(syn_block)[cur_si->si_idx].sp_flags & HL_CONTAINED))
@@ -6127,19 +6125,19 @@ in_id_list(
     {
 	if (item < SYNID_TOP)
 	{
-	    /* ALL or ALLBUT: accept all groups in the same file */
+	    // ALL or ALLBUT: accept all groups in the same file
 	    if (item - SYNID_ALLBUT != ssp->inc_tag)
 		return FALSE;
 	}
 	else if (item < SYNID_CONTAINED)
 	{
-	    /* TOP: accept all not-contained groups in the same file */
+	    // TOP: accept all not-contained groups in the same file
 	    if (item - SYNID_TOP != ssp->inc_tag || contained)
 		return FALSE;
 	}
 	else
 	{
-	    /* CONTAINED: accept all contained groups in the same file */
+	    // CONTAINED: accept all contained groups in the same file
 	    if (item - SYNID_CONTAINED != ssp->inc_tag || !contained)
 		return FALSE;
 	}
@@ -6159,8 +6157,8 @@ in_id_list(
 	if (item >= SYNID_CLUSTER)
 	{
 	    scl_list = SYN_CLSTR(syn_block)[item - SYNID_CLUSTER].scl_list;
-	    /* restrict recursiveness to 30 to avoid an endless loop for a
-	     * cluster that includes itself (indirectly) */
+	    // restrict recursiveness to 30 to avoid an endless loop for a
+	    // cluster that includes itself (indirectly)
 	    if (scl_list != NULL && depth < 30)
 	    {
 		++depth;
@@ -6177,8 +6175,8 @@ in_id_list(
 
 struct subcommand
 {
-    char    *name;			/* subcommand name */
-    void    (*func)(exarg_T *, int);	/* function to call */
+    char    *name;			// subcommand name
+    void    (*func)(exarg_T *, int);	// function to call
 };
 
 static struct subcommand subcommands[] =
@@ -6219,13 +6217,13 @@ ex_syntax(exarg_T *eap)
 
     syn_cmdlinep = eap->cmdlinep;
 
-    /* isolate subcommand name */
+    // isolate subcommand name
     for (subcmd_end = arg; ASCII_ISALPHA(*subcmd_end); ++subcmd_end)
 	;
     subcmd_name = vim_strnsave(arg, (int)(subcmd_end - arg));
     if (subcmd_name != NULL)
     {
-	if (eap->skip)		/* skip error messages for all subcommands */
+	if (eap->skip)		// skip error messages for all subcommands
 	    ++emsg_skip;
 	for (i = 0; ; ++i)
 	{
@@ -6260,8 +6258,8 @@ ex_ownsyntax(exarg_T *eap)
 	hash_init(&curwin->w_s->b_keywtab);
 	hash_init(&curwin->w_s->b_keywtab_ic);
 #ifdef FEAT_SPELL
-	/* TODO: keep the spell checking as it was. */
-	curwin->w_p_spell = FALSE;	/* No spell checking */
+	// TODO: keep the spell checking as it was.
+	curwin->w_p_spell = FALSE;	// No spell checking
 	clear_string_option(&curwin->w_s->b_p_spc);
 	clear_string_option(&curwin->w_s->b_p_spf);
 	clear_string_option(&curwin->w_s->b_p_spl);
@@ -6269,21 +6267,21 @@ ex_ownsyntax(exarg_T *eap)
 	clear_string_option(&curwin->w_s->b_syn_isk);
     }
 
-    /* save value of b:current_syntax */
+    // save value of b:current_syntax
     old_value = get_var_value((char_u *)"b:current_syntax");
     if (old_value != NULL)
 	old_value = vim_strsave(old_value);
 
-    /* Apply the "syntax" autocommand event, this finds and loads the syntax
-     * file. */
+    // Apply the "syntax" autocommand event, this finds and loads the syntax
+    // file.
     apply_autocmds(EVENT_SYNTAX, eap->arg, curbuf->b_fname, TRUE, curbuf);
 
-    /* move value of b:current_syntax to w:current_syntax */
+    // move value of b:current_syntax to w:current_syntax
     new_value = get_var_value((char_u *)"b:current_syntax");
     if (new_value != NULL)
 	set_internal_string_var((char_u *)"w:current_syntax", new_value);
 
-    /* restore value of b:current_syntax */
+    // restore value of b:current_syntax
     if (old_value == NULL)
 	do_unlet((char_u *)"b:current_syntax", TRUE);
     else
@@ -6305,10 +6303,10 @@ syntax_present(win_T *win)
 
 static enum
 {
-    EXP_SUBCMD,	    /* expand ":syn" sub-commands */
-    EXP_CASE,	    /* expand ":syn case" arguments */
-    EXP_SPELL,	    /* expand ":syn spell" arguments */
-    EXP_SYNC	    /* expand ":syn sync" arguments */
+    EXP_SUBCMD,	    // expand ":syn" sub-commands
+    EXP_CASE,	    // expand ":syn case" arguments
+    EXP_SPELL,	    // expand ":syn spell" arguments
+    EXP_SYNC	    // expand ":syn sync" arguments
 } expand_what;
 
 /*
@@ -6341,18 +6339,18 @@ set_context_in_syntax_cmd(expand_T *xp, 
 {
     char_u	*p;
 
-    /* Default: expand subcommands */
+    // Default: expand subcommands
     xp->xp_context = EXPAND_SYNTAX;
     expand_what = EXP_SUBCMD;
     xp->xp_pattern = arg;
     include_link = 0;
     include_default = 0;
 
-    /* (part of) subcommand already typed */
+    // (part of) subcommand already typed
     if (*arg != NUL)
     {
 	p = skiptowhite(arg);
-	if (*p != NUL)		    /* past first word */
+	if (*p != NUL)		    // past first word
 	{
 	    xp->xp_pattern = skipwhite(p);
 	    if (*skiptowhite(xp->xp_pattern) != NUL)
@@ -6417,12 +6415,12 @@ syn_get_id(
     win_T	*wp,
     long	lnum,
     colnr_T	col,
-    int		trans,	     /* remove transparency */
-    int		*spellp,     /* return: can do spell checking */
-    int		keep_state)  /* keep state of char at "col" */
+    int		trans,	     // remove transparency
+    int		*spellp,     // return: can do spell checking
+    int		keep_state)  // keep state of char at "col"
 {
-    /* When the position is not after the current position and in the same
-     * line of the same buffer, need to restart parsing. */
+    // When the position is not after the current position and in the same
+    // line of the same buffer, need to restart parsing.
     if (wp->w_buffer != syn_buf
 	    || lnum != current_lnum
 	    || col < current_col)
@@ -6430,8 +6428,8 @@ syn_get_id(
     else if (wp->w_buffer == syn_buf
 	    && lnum == current_lnum
 	    && col > current_col)
-	/* next_match may not be correct when moving around, e.g. with the
-	 * "skip" expression in searchpair() */
+	// next_match may not be correct when moving around, e.g. with the
+	// "skip" expression in searchpair()
 	next_match_idx = -1;
 
     (void)get_syntax_attr(col, spellp, keep_state);
@@ -6474,8 +6472,8 @@ syn_get_stack_item(int i)
 {
     if (i >= current_state.ga_len)
     {
-	/* Need to invalidate the state, because we didn't properly finish it
-	 * for the last character, "keep_state" was TRUE. */
+	// Need to invalidate the state, because we didn't properly finish it
+	// for the last character, "keep_state" was TRUE.
 	invalidate_current_state();
 	current_col = MAXCOL;
 	return -1;
@@ -6494,7 +6492,7 @@ syn_get_foldlevel(win_T *wp, long lnum)
     int		level = 0;
     int		i;
 
-    /* Return quickly when there are no fold items at all. */
+    // Return quickly when there are no fold items at all.
     if (wp->w_s->b_syn_folditems != 0
 	    && !wp->w_s->b_syn_error
 # ifdef SYN_TIME_LIMIT
@@ -6652,8 +6650,8 @@ syntime_report(void)
 	}
     }
 
-    /* Sort on total time. Skip if there are no items to avoid passing NULL
-     * pointer to qsort(). */
+    // Sort on total time. Skip if there are no items to avoid passing NULL
+    // pointer to qsort().
     if (ga.ga_len > 1)
 	qsort(ga.ga_data, (size_t)ga.ga_len, sizeof(time_entry_T),
 							 syn_compare_syntime);
@@ -6665,7 +6663,7 @@ syntime_report(void)
 	p = ((time_entry_T *)ga.ga_data) + idx;
 
 	msg_puts(profile_msg(&p->total));
-	msg_puts(" "); /* make sure there is always a separating space */
+	msg_puts(" "); // make sure there is always a separating space
 	msg_advance(13);
 	msg_outnum(p->count);
 	msg_puts(" ");
@@ -6686,7 +6684,7 @@ syntime_report(void)
 
 	msg_advance(69);
 	if (Columns < 80)
-	    len = 20; /* will wrap anyway */
+	    len = 20; // will wrap anyway
 	else
 	    len = Columns - 70;
 	if (len > (int)STRLEN(p->pattern))
@@ -6706,4 +6704,4 @@ syntime_report(void)
 }
 #endif
 
-#endif /* FEAT_SYN_HL */
+#endif // FEAT_SYN_HL