diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2016-12-06 10:05:22 +0100 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2016-12-06 10:05:22 +0100 |
commit | 0d6f4f1bb17e72b6bc0a7d781b2ca9fc1a6c4adb (patch) | |
tree | d7f57d89751cf69d78d52d206590b357ccc0c3a4 /compiler/cgen.nim | |
parent | 38ab106051481953c53d179542005c9576ae5983 (diff) | |
download | Nim-0d6f4f1bb17e72b6bc0a7d781b2ca9fc1a6c4adb.tar.gz |
implements -d:nimdiff switch for seeing generated C code diffs
Diffstat (limited to 'compiler/cgen.nim')
-rw-r--r-- | compiler/cgen.nim | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/compiler/cgen.nim b/compiler/cgen.nim index 118a10214..6a60e87e9 100644 --- a/compiler/cgen.nim +++ b/compiler/cgen.nim @@ -1245,7 +1245,13 @@ proc shouldRecompile(code: Rope, cfile: string): bool = result = true if optForceFullMake notin gGlobalOptions: var objFile = toObjFile(cfile) - if writeRopeIfNotEqual(code, cfile): return + + if not equalsFile(code, cfile): + if isDefined("nimdiff"): + copyFile(cfile, cfile & ".backup") + echo "diff ", cfile, ".backup ", cfile + writeRope(code, cfile) + return if existsFile(objFile) and os.fileNewer(objFile, cfile): result = false else: writeRope(code, cfile) |