From cd3d4faa79d0ae90afa706393ec67f0721ed87be Mon Sep 17 00:00:00 2001 From: awr <41453959+awr1@users.noreply.github.com> Date: Tue, 4 Sep 2018 16:42:37 -0500 Subject: Deny THIS experimental pragma specifically for non-toplevel --- compiler/pragmas.nim | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/compiler/pragmas.nim b/compiler/pragmas.nim index 910ee799c..fae215556 100644 --- a/compiler/pragmas.nim +++ b/compiler/pragmas.nim @@ -743,7 +743,11 @@ proc processExperimental(c: PContext; n: PNode) = let feature = parseEnum[Feature](n[1].strVal) c.features.incl feature if feature == codeReordering: - c.module.flags.incl sfReorder + if not isTopLevel(c): + localError(c.config, n.info, + "Code reordering experimental pragma only valid at toplevel") + else: + c.module.flags.incl sfReorder except ValueError: localError(c.config, n[1].info, "unknown experimental feature") else: -- cgit 1.4.1-2-gfad0