From db67e95bb230f1ce0c503e1ecf86b392d089b663 Mon Sep 17 00:00:00 2001 From: Andreas Rumpf Date: Sat, 5 Mar 2016 17:34:06 +0100 Subject: [PATCH] fixes JS regression --- lib/system.nim | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/system.nim b/lib/system.nim index f3ef770fcf..241f552246 100644 --- a/lib/system.nim +++ b/lib/system.nim @@ -3286,10 +3286,12 @@ proc `/=`*[T: float|float32](x: var T, y: T) {.inline, noSideEffect.} = x = x / y proc `&=`* (x: var string, y: string) {.magic: "AppendStrStr", noSideEffect.} -template `&=`*(x, y: typed) = add(x, y) -template `&=`*(f: File, x: typed) = write(f, x) +template `&=`*(x, y: typed) = ## generic 'sink' operator for Nim. For files an alias for ``write``. ## If not specialized further an alias for ``add``. + add(x, y) +when declared(File): + template `&=`*(f: File, x: typed) = write(f, x) proc astToStr*[T](x: T): string {.magic: "AstToStr", noSideEffect.} ## converts the AST of `x` into a string representation. This is very useful