tree: 389f95665b8508f75b5fb81f7d1a21ae95ad6209
  1. abi/
  2. alias3.dir/
  3. arenas/
  4. asmhdr.dir/
  5. chan/
  6. closure3.dir/
  7. closure5.dir/
  8. codegen/
  9. ddd2.dir/
  10. dwarf/
  11. fixedbugs/
  12. import2.dir/
  13. import4.dir/
  14. interface/
  15. internal/
  16. intrinsic.dir/
  17. ken/
  18. linkname.dir/
  19. linknameasm.dir/
  20. method4.dir/
  21. retjmp.dir/
  22. simd/
  23. stress/
  24. syntax/
  25. typeparam/
  26. uintptrescapes.dir/
  27. wasmmemsize.dir/
  28. 235.go
  29. 64bit.go
  30. alg.go
  31. alias.go
  32. alias1.go
  33. alias2.go
  34. alias3.go
  35. align.go
  36. append.go
  37. append1.go
  38. args.go
  39. armimm.go
  40. asmhdr.go
  41. assign.go
  42. assign1.go
  43. atomicload.go
  44. bigalg.go
  45. bigmap.go
  46. blank.go
  47. blank1.go
  48. bloop.go
  49. bom.go
  50. bombad.go
  51. bounds.go
  52. cannotassign.go
  53. chancap.go
  54. chanlinear.go
  55. char_lit.go
  56. char_lit1.go
  57. checkbce.go
  58. clear.go
  59. clearfat.go
  60. closedchan.go
  61. closure.go
  62. closure1.go
  63. closure2.go
  64. closure3.go
  65. closure4.go
  66. closure5.go
  67. closure6.go
  68. closure7.go
  69. closure_dynconst.go
  70. cmp.go
  71. cmp6.go
  72. cmplx.go
  73. cmplxdivide.c
  74. cmplxdivide.go
  75. cmplxdivide1.go
  76. complit.go
  77. complit1.go
  78. complit2.go
  79. compos.go
  80. const.go
  81. const1.go
  82. const2.go
  83. const3.go
  84. const4.go
  85. const5.go
  86. const6.go
  87. const7.go
  88. const8.go
  89. convert.go
  90. convert1.go
  91. convert2.go
  92. convert3.go
  93. convert4.go
  94. convert5.go
  95. convert5.out
  96. convinline.go
  97. convlit.go
  98. convlit1.go
  99. convT2X.go
  100. copy.go
  101. copy1.go
  102. crlf.go
  103. ddd.go
  104. ddd1.go
  105. ddd2.go
  106. decl.go
  107. declbad.go
  108. defer.go
  109. defererrcheck.go
  110. deferfin.go
  111. defernil.go
  112. deferprint.go
  113. deferprint.out
  114. deferstacktemp.go
  115. devirt.go
  116. devirtualization.go
  117. devirtualization_nil_panics.go
  118. devirtualization_with_type_assertions_interleaved.go
  119. directive.go
  120. directive2.go
  121. divide.go
  122. divmod.go
  123. embedfunc.go
  124. embedvers.go
  125. empty.go
  126. env.go
  127. eof.go
  128. eof1.go
  129. escape.go
  130. escape2.go
  131. escape2n.go
  132. escape3.go
  133. escape4.go
  134. escape5.go
  135. escape6.go
  136. escape_alias.go
  137. escape_array.go
  138. escape_bloop.go
  139. escape_calls.go
  140. escape_closure.go
  141. escape_dynconst_closure.go
  142. escape_field.go
  143. escape_goto.go
  144. escape_hash_maphash.go
  145. escape_iface.go
  146. escape_iface_data.go
  147. escape_indir.go
  148. escape_level.go
  149. escape_make_non_const.go
  150. escape_map.go
  151. escape_mutations.go
  152. escape_param.go
  153. escape_reflect.go
  154. escape_runtime_atomic.go
  155. escape_selfassign.go
  156. escape_slice.go
  157. escape_struct_param1.go
  158. escape_struct_param2.go
  159. escape_struct_return.go
  160. escape_sync_atomic.go
  161. escape_unique.go
  162. escape_unsafe.go
  163. fibo.go
  164. finprofiled.go
  165. float_lit.go
  166. float_lit2.go
  167. float_lit3.go
  168. floatcmp.go
  169. for.go
  170. func.go
  171. func1.go
  172. func2.go
  173. func3.go
  174. func4.go
  175. func5.go
  176. func6.go
  177. func7.go
  178. func8.go
  179. funcdup.go
  180. funcdup2.go
  181. fuse.go
  182. gc.go
  183. gc1.go
  184. gc2.go
  185. gcgort.go
  186. gcstring.go
  187. genmeth.go
  188. genmeth1.go
  189. genmeth2.go
  190. goprint.go
  191. goprint.out
  192. goto.go
  193. heapsampling.go
  194. helloworld.go
  195. helloworld.out
  196. if.go
  197. import.go
  198. import1.go
  199. import2.go
  200. import4.go
  201. import5.go
  202. import6.go
  203. index.go
  204. index0.go
  205. index1.go
  206. index2.go
  207. indirect.go
  208. indirect1.go
  209. init.go
  210. init1.go
  211. initcomma.go
  212. initexp.go
  213. initialize.go
  214. initializerr.go
  215. initloop.go
  216. inline.go
  217. inline_big.go
  218. inline_caller.go
  219. inline_callers.go
  220. inline_endian.go
  221. inline_literal.go
  222. inline_math_bits_rotate.go
  223. inline_sync.go
  224. inline_variadic.go
  225. int_lit.go
  226. intcvt.go
  227. intrinsic.go
  228. intrinsic_atomic.go
  229. iota.go
  230. known_bits.go
  231. label.go
  232. label1.go
  233. linkmain.go
  234. linkmain_run.go
  235. linkname.go
  236. linkname3.go
  237. linknameasm.go
  238. linkobj.go
  239. linkx.go
  240. linkx_run.go
  241. literal.go
  242. literal2.go
  243. live.go
  244. live1.go
  245. live2.go
  246. live_regabi.go
  247. live_uintptrkeepalive.go
  248. loopbce.go
  249. mainsig.go
  250. makechan.go
  251. makemap.go
  252. makenew.go
  253. makeslice.go
  254. mallocfin.go
  255. map.go
  256. map1.go
  257. mapclear.go
  258. maplinear.go
  259. maymorestack.go
  260. mergemul.go
  261. method.go
  262. method1.go
  263. method2.go
  264. method3.go
  265. method4.go
  266. method5.go
  267. method6.go
  268. method7.go
  269. named.go
  270. named1.go
  271. newexpr.go
  272. newinline.go
  273. nil.go
  274. nilcheck.go
  275. nilptr.go
  276. nilptr2.go
  277. nilptr3.go
  278. nilptr4.go
  279. nilptr5.go
  280. nilptr5_aix.go
  281. nilptr5_wasm.go
  282. nilptr_aix.go
  283. noinit.go
  284. nosplit.go
  285. nowritebarrier.go
  286. nul1.go
  287. opt_branchlikely.go
  288. parentype.go
  289. peano.go
  290. phiopt.go
  291. print.go
  292. print.out
  293. printbig.go
  294. printbig.out
  295. prove.go
  296. prove_constant_folding.go
  297. prove_invert_loop_with_unused_iterators.go
  298. prove_popcount.go
  299. range.go
  300. range2.go
  301. range3.go
  302. range4.go
  303. rangegen.go
  304. README.md
  305. recover.go
  306. recover1.go
  307. recover2.go
  308. recover3.go
  309. recover4.go
  310. recover5.go
  311. recover6.go
  312. reflectmethod1.go
  313. reflectmethod2.go
  314. reflectmethod3.go
  315. reflectmethod4.go
  316. reflectmethod5.go
  317. reflectmethod6.go
  318. reflectmethod7.go
  319. reflectmethod8.go
  320. rename.go
  321. rename1.go
  322. reorder.go
  323. reorder2.go
  324. retjmp.go
  325. return.go
  326. rotate.go
  327. rotate0.go
  328. rotate1.go
  329. rotate2.go
  330. rotate3.go
  331. rune.go
  332. runtime.go
  333. shift1.go
  334. shift2.go
  335. shift3.go
  336. sieve.go
  337. sigchld.go
  338. sigchld.out
  339. simassign.go
  340. simd.go
  341. simd_critical.go
  342. simd_inline.go
  343. sizeof.go
  344. slice3.go
  345. slice3err.go
  346. slicecap.go
  347. sliceopt.go
  348. solitaire.go
  349. stack.go
  350. stackobj.go
  351. stackobj2.go
  352. stackobj3.go
  353. strcopy.go
  354. strength.go
  355. string_lit.go
  356. stringrange.go
  357. struct0.go
  358. switch.go
  359. switch2.go
  360. switch3.go
  361. switch4.go
  362. switch5.go
  363. switch6.go
  364. switch7.go
  365. tailcall.go
  366. tighten.go
  367. tinyfin.go
  368. torture.go
  369. turing.go
  370. typecheck.go
  371. typecheckloop.go
  372. typeswitch.go
  373. typeswitch1.go
  374. typeswitch2.go
  375. typeswitch2b.go
  376. typeswitch3.go
  377. uintptrescapes.go
  378. uintptrescapes2.go
  379. uintptrescapes3.go
  380. uintptrkeepalive.go
  381. undef.go
  382. unsafe_slice_data.go
  383. unsafe_string.go
  384. unsafe_string_data.go
  385. unsafebuiltins.go
  386. used.go
  387. utf.go
  388. varerr.go
  389. varinit.go
  390. wasmexport.go
  391. wasmexport2.go
  392. wasmmemsize.go
  393. weak.go
  394. winbatch.go
  395. writebarrier.go
  396. zerodivide.go
  397. zerosize.go
test/README.md

The test directory contains tests of the Go tool chain and runtime. It includes black box tests, regression tests, and error output tests. They are run as part of all.bash.

To run just these tests, execute:

../bin/go test cmd/internal/testdir

To run just tests from specified files in this directory, execute:

../bin/go test cmd/internal/testdir -run='Test/(file1.go|file2.go|...)'

Standard library tests should be written as regular Go tests in the appropriate package.

The tool chain and runtime also have regular Go tests in their packages. The main reasons to add a new test to this directory are:

  • it is most naturally expressed using the test runner; or
  • it is also applicable to gccgo and other Go tool chains.