āĻ¨āĻŋāĻŽ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻŋāĻ‚ āĻ­āĻžāĻˇāĻž āĻĒā§āĻ°āĻ•āĻžāĻļ 1.4.0

āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻŋāĻ‚ āĻ­āĻžāĻˇāĻž āĻ¨āĻŋāĻŽā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻĒā§āĻ°āĻ•āĻžāĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻž āĻāĻ‡ āĻ¸ā§‡āĻĒā§āĻŸā§‡āĻŽā§āĻŦāĻ°ā§‡ āĻ¤āĻžāĻ° āĻāĻ• āĻŦāĻ›āĻ° āĻĒā§‚āĻ°ā§āĻ¤āĻŋ āĻ‰āĻĻāĻ¯āĻžāĻĒāĻ¨ āĻ•āĻ°ā§‡āĻ›ā§‡āĨ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§€āĻ˛ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ. āĻ­āĻžāĻˇāĻžāĻŸāĻŋ āĻ¸āĻŋāĻ¨āĻŸā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡ āĻĒāĻžāĻ‡āĻĨāĻ¨ā§‡āĻ° āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻāĻŦāĻ‚ āĻ•āĻžāĻ°ā§āĻ¯āĻ•ā§āĻˇāĻŽāĻ¤āĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻžāĻ¯āĻŧ C++ āĻāĻ° āĻŽāĻ¤ā§‹āĨ¤ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡ FAQ āĻ­āĻžāĻˇāĻžāĻŸāĻŋ (āĻ…āĻŦāĻĻāĻžāĻ¨ā§‡āĻ° āĻ•ā§āĻ°āĻŽ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡): āĻŽāĻĄā§āĻ˛āĻž 3, āĻĄā§‡āĻ˛āĻĢāĻŋ, āĻ…ā§āĻ¯āĻžāĻĄāĻž, āĻ¸āĻŋ++, āĻĒāĻžāĻ‡āĻĨāĻ¨, āĻ˛āĻŋāĻ¸ā§āĻĒ, āĻ“āĻŦā§‡āĻ°āĻ¨ āĻĨā§‡āĻ•ā§‡ āĻĒā§āĻ°āĻšā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§‡ āĻ§āĻžāĻ° āĻ¨ā§‡āĻ¯āĻŧāĨ¤


C/C++/Objective-C/JS-āĻ āĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛ āĻ•āĻ°āĻžāĻ° āĻ•ā§āĻˇāĻŽāĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŦ āĻœāĻžāĻ¯āĻŧāĻ—āĻžāĻ¯āĻŧ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡āĨ¤ āĻāĻŸāĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°ā§‡ āĻŽā§āĻ¯āĻžāĻ•ā§āĻ°ā§‹, āĻĒāĻŋāĻāĻ˛āĻ“, āĻœā§‡āĻ¨ā§‡āĻ°āĻŋāĻ•, āĻŦā§āĻ¯āĻ¤āĻŋāĻ•ā§āĻ°āĻŽ, āĻšāĻŸ āĻ•ā§‹āĻĄ āĻ…āĻĻāĻ˛āĻŦāĻĻāĻ˛ āĻāĻŦāĻ‚ āĻ†āĻ°ā§‹ āĻ…āĻ¨ā§‡āĻ• āĻ•āĻŋāĻ›ā§. āĻ˛āĻžāĻ‡āĻ¸ā§‡āĻ¨ā§āĻ¸: āĻāĻŽāĻ†āĻ‡āĻŸāĻŋāĨ¤

āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻ¯ā§‹āĻ—ā§āĻ¯ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨:

  • āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ ORC āĻ†āĻŦāĻ°ā§āĻœāĻ¨āĻž āĻ¸āĻ‚āĻ—ā§āĻ°āĻžāĻšāĻ• āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯āĻž ARC āĻĨā§‡āĻ•ā§‡ āĻ…ā§āĻ¯āĻžāĻ˛āĻ—āĻ°āĻŋāĻĻāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§‡āĻˇ āĻ‰āĻĒāĻžāĻ¯āĻŧā§‡ āĻŦā§ƒāĻ¤ā§āĻ¤āĻžāĻ•āĻžāĻ° āĻ°ā§‡āĻĢāĻžāĻ°ā§‡āĻ¨ā§āĻ¸āĻ—ā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻž āĻ•āĻ°ā§‡āĨ¤ -gc:orc āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻ•ā§āĻˇāĻŽāĨ¤ ARC/ORC āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻŽāĻšāĻžāĻ¨ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ āĻ†āĻ›ā§‡.

  • āĻ•āĻ ā§‹āĻ° āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻŽā§‹āĻĄ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻž āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛āĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻšā§‡āĻ• āĻ¸āĻ•ā§āĻˇāĻŽ āĻ•āĻ°ā§‡āĨ¤ pragma {.experimental: "strictFuncs"} āĻŦāĻž --experimental:strictFuncs āĻ•ā§€-āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ¸āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

  • from the keyword āĻāĻ–āĻ¨ āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

  • āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ .noalias pragma. āĻ•ā§€āĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻŸāĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻāĻŽāĻ¨ āĻĻāĻ•ā§āĻˇāĻ¤āĻž āĻŦāĻžāĻĄāĻŧāĻžāĻ¤ā§‡ āĻāĻŸāĻŋ āĻ¸āĻŋ āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻ•ā§€āĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻĄā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻŽāĻžāĻ¨āĻšāĻŋāĻ¤ā§āĻ° āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡āĨ¤

  • āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ¸āĻ¤āĻ°ā§āĻ•āĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻāĻ–āĻ¨ --warningAsError[X]:on|off āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ¤ā§‡ āĻĒāĻ°āĻŋāĻŖāĻ¤ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

  • āĻ¨āĻ¤ā§āĻ¨ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ: nim r main.nim [args...], āĻ¯āĻž main.nim āĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻšāĻžāĻ˛āĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻāĻ¤ā§‡ --usenimcache āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻĨāĻžāĻ•ā§‡ āĻ¯āĻžāĻ¤ā§‡ āĻĢāĻ˛āĻžāĻĢāĻ˛āĻŸāĻŋ $nimcache/main$exeExt-āĻ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻ•āĻ‡ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ nim c - r āĻĒā§āĻ¨āĻƒāĻ¸āĻ‚āĻ•āĻ˛āĻ¨ āĻĨā§‡āĻ•ā§‡ āĻĒāĻ°āĻŋāĻ¤ā§āĻ°āĻžāĻŖ āĻĒā§‡āĻ¤ā§‡ āĻ¯āĻ–āĻ¨ āĻ‰āĻ¤ā§āĻ¸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¨āĻž āĻšāĻ¯āĻŧ. āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ:

nim r compiler/nim.nim --help # āĻĒā§āĻ°āĻĨāĻŽāĻŦāĻžāĻ° āĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡
āĻ‡āĻ•ā§‹ 'āĻ‡āĻŽā§āĻĒā§‹āĻ°ā§āĻŸ āĻ“āĻāĻ¸; echo getCurrentCompilerExe()' | nim r - # āĻāĻŸāĻŋāĻ“ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡
nim r compiler/nim.nim --fullhelp # āĻ°āĻŋāĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛ā§‡āĻļāĻ¨ āĻ›āĻžāĻĄāĻŧāĻžāĻ‡
nim r —nimcache:/tmp āĻĒā§āĻ°āĻ§āĻžāĻ¨ # āĻŦāĻžāĻ‡āĻ¨āĻžāĻ°āĻŋ /tmp/main-āĻ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŋāĻ¤

  • āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ‡āĻ™ā§āĻ—āĻŋāĻ¤ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ -hint:msgOrigin, āĻ¯āĻž āĻĻā§‡āĻ–āĻžāĻŦā§‡ āĻ•ā§‹āĻĨāĻžāĻ¯āĻŧ āĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛āĻžāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ/āĻ¸āĻ¤āĻ°ā§āĻ•āĻ¤āĻž āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡āĻ›ā§‡āĨ¤ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻŸāĻŋ āĻ•ā§‹āĻĨāĻž āĻĨā§‡āĻ•ā§‡ āĻāĻ¸ā§‡āĻ›ā§‡ āĻ¤āĻž āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻ¨āĻž āĻšāĻ˛ā§‡ āĻāĻŸāĻŋ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻ•āĻ°ā§‡ā§ˇ

  • āĻŦā§āĻ¯āĻžāĻ•āĻāĻ¨ā§āĻĄ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻ¤āĻžāĻ•āĻž āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ —āĻŦā§āĻ¯āĻžāĻ•āĻāĻ¨ā§āĻĄ:js|c|cpp|objc (āĻŦāĻž -b:js, āĻ‡āĻ¤ā§āĻ¯āĻžāĻĻāĻŋ)āĨ¤

  • āĻ¨āĻŋāĻŽāĻ•ā§āĻ¯āĻžāĻļā§‡ āĻŦāĻžāĻ‡āĻ¨āĻžāĻ°āĻŋ āĻ†āĻ‰āĻŸāĻĒā§āĻŸ āĻ•āĻ°āĻ¤ā§‡ --usenimcache āĻĒāĻ¤āĻžāĻ•āĻž āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

  • āĻ•ā§€ āĻ¸āĻ°āĻžāĻ¨ā§‹ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡: --oldNewlines, --laxStrings, --oldast, --oldgensym

  • āĻ¨āĻŋāĻŽāĻ¸āĻœā§‡āĻ¸ā§āĻŸ āĻ‡āĻ‰āĻŸāĻŋāĻ˛āĻŋāĻŸāĻŋ āĻāĻ–āĻ¨ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§‚āĻ°ā§āĻŦ āĻ˜ā§‹āĻˇāĻŖāĻžāĻ‡ āĻ¨āĻ¯āĻŧ, āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻĢ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§‡āĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ¨āĻ“ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧāĨ¤

āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“, āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ¤ā§‡ āĻ…āĻ¨ā§‡āĻ• āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§‡āĻ• āĻŦāĻžāĻ— āĻĢāĻŋāĻ•ā§āĻ¸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻ‰āĻ¤ā§āĻ¸: linux.org.ru