diff --git a/src/tag.c b/src/tag.c
index 37ed66c..4eb7a4f 100644
--- a/src/tag.c
+++ b/src/tag.c
@@ -3511,7 +3511,7 @@
 	// Save value of no_hlsearch, jumping to a tag is not a real search
 	save_no_hlsearch = no_hlsearch;
 #endif
-#ifdef FEAT_PROP_POPUP
+#if defined(FEAT_PROP_POPUP) && defined(FEAT_QUICKFIX)
 	// getfile() may have cleared options, apply 'previewpopup' again.
 	if (g_do_tagpreview != 0 && *p_pvp != NUL)
 	    parse_previewpopup(curwin);
diff --git a/src/version.c b/src/version.c
index 9b53528..5ef8d7c 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2836,
+/**/
     2835,
 /**/
     2834,
diff --git a/src/vim9compile.c b/src/vim9compile.c
index ead193f..a724d1a 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -8704,6 +8704,7 @@
     return compile_exec(line, eap, cctx);
 }
 
+#ifdef FEAT_QUICKFIX
     static char_u *
 compile_cexpr(char_u *line, exarg_T *eap, cctx_T *cctx)
 {
@@ -8731,6 +8732,7 @@
 
     return p;
 }
+#endif
 
 /*
  * Add a function to the list of :def functions.
@@ -9296,8 +9298,13 @@
 	    case CMD_laddexpr:
 	    case CMD_cgetexpr:
 	    case CMD_lgetexpr:
+#ifdef FEAT_QUICKFIX
 		    ea.arg = p;
 		    line = compile_cexpr(line, &ea, &cctx);
+#else
+		    ex_ni(&ea);
+		    line = NULL;
+#endif
 		    break;
 
 	    // TODO: any other commands with an expression argument?
diff --git a/src/vim9execute.c b/src/vim9execute.c
index f260e60..c8586b3 100644
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -1443,11 +1443,14 @@
 		break;
 
 	    case ISN_CEXPR_AUCMD:
+#ifdef FEAT_QUICKFIX
 		if (trigger_cexpr_autocmd(iptr->isn_arg.number) == FAIL)
 		    goto on_error;
+#endif
 		break;
 
 	    case ISN_CEXPR_CORE:
+#ifdef FEAT_QUICKFIX
 		{
 		    exarg_T ea;
 		    int	    res;
@@ -1463,6 +1466,7 @@
 		    if (res == FAIL)
 			goto on_error;
 		}
+#endif
 		break;
 
 	    // execute Ex command from pieces on the stack
@@ -4415,10 +4419,13 @@
 					iptr->isn_arg.number ? " append" : "");
 		break;
 	    case ISN_CEXPR_AUCMD:
+#ifdef FEAT_QUICKFIX
 		smsg("%s%4d CEXPR pre %s", pfx, current,
 				       cexpr_get_auname(iptr->isn_arg.number));
+#endif
 		break;
 	    case ISN_CEXPR_CORE:
+#ifdef FEAT_QUICKFIX
 		{
 		    cexprref_T	    *cer = iptr->isn_arg.cexpr.cexpr_ref;
 
@@ -4427,6 +4434,7 @@
 				       cer->cer_forceit ? "!" : "",
 				       cer->cer_cmdline);
 		}
+#endif
 		break;
 	    case ISN_SUBSTITUTE:
 		{
