diff --git a/src/snc/analysis.c b/src/snc/analysis.c
index 8451795a7b3b682a958ff606ddd4b7ebd7e7e2fc..bb61914d1aae9cb212b18908692186fa011b7fb4 100644
--- a/src/snc/analysis.c
+++ b/src/snc/analysis.c
@@ -241,9 +241,11 @@ static void analyse_option(Options *options, Expr *defn)
 		case 'e': options->newef = optval; break;
 		case 'l': options->line = optval; break;
 		case 'm': options->main = optval; break;
+		case 'p': options->newpv = optval; break;
 		case 'r': options->reent = optval; break;
 		case 's': options->safe = optval; break;
 		case 'w': options->warn = optval; break;
+		case 'W': options->xwarn = optval; break;
 		default: report_at_expr(defn,
 		  "warning: unknown option '%s'\n", optname);
 		}