dmd/compiler/test/runnable
2025-04-04 16:58:48 -07:00
..
extra-files Add test case for Bugzilla 24590 2024-06-11 14:37:48 +02:00
imports Make lambda symbols stable post a3abf1187e 2024-12-07 10:48:34 +01:00
.gitignore
A16.d
a17.d
a18.d
a19.d
a20.d
a21.d
aliasassign.d fix #20610 aliasing for fields does not work (#20611) 2024-12-27 21:38:25 -08:00
aliasthis.d
argufilem.d
arm.d add arm tests (#16563) 2024-06-05 15:31:02 -07:00
arrayop.d
auto1.d
b26.d
b6400.d
b10562.d
b16278.d
b16360.d
b17073.d
b18034.d
b19294.d
b19584.d
b20470.d
b20890.d
bcraii.d
bcraii2.d
bench1.d
betterc.d
bettercUnittest.d
bit.d
bitfields.c
bitfieldsms.c Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
bitfieldsposix32.c Fix bugzilla 24592 - ImportC: Bitfield layout wrong for int64 on 32-bit Linux 2024-06-17 02:31:02 +02:00
bitfieldsposix64.c Fix bugzilla 24592 - ImportC: Bitfield layout wrong for int64 on 32-bit Linux 2024-06-17 02:31:02 +02:00
bitops.d
bom_UTF8.d
bom_UTF16.d
bom_UTF16BE.d
bom_UTF32.d
bug5.d
bug846.d
bug7068.d
bug9010.d
bug11155.d
bug12928.d
bug16146.d
bug19652.d
builtin.d
c22.d
casting.d
cdcmp.d
cdvecfill.sh
class_destructors.d
class_opCmp.d
closure.d
complex.d
complex3.d
constfold.d
cov2.d
cppdtor.d
cstuff3.i
cstuff4.c
ctfe_cov.d
ctorpowtests.d
dbitfields.d
dbitfieldsms.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
dbitfieldsposix32.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
dbitfieldsposix64.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
declaration.d Implement auto ref for local variables 2024-08-07 05:49:49 +02:00
delegate.d
dhry.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
e7804.d
eh.d
eh2.d
entity1.d
evalorder.d
exe1.c getting first two tests in exe1.c to run (#20968) 2025-03-08 22:49:35 -08:00
exe2.c add exe2.c exe3.c Import C test files (#21146) 2025-04-04 16:58:48 -07:00
exe3.c add exe2.c exe3.c Import C test files (#21146) 2025-04-04 16:58:48 -07:00
extern1.d
fix17429.d
fix20466.d
fix22115.d
fix22372.d
fix22624.d
fix22918.c
fldconst.d
foreach.d
foreach2.d
foreach3.d
foreach4.d
foreach5.d
funclit.d Make delete an identifier instead of keyword (#20745) 2025-01-21 23:33:50 +01:00
functype.d
future.d feat(errors): enable verrors=context globally (#20576) 2025-01-03 05:17:59 +08:00
gdb1.d
gdb4149.d
gdb4181.d
gdb10311.d
gdb14225.d
gdb14276.d
gdb14313.d
gdb14330.d
gdb15729.sh
gdb18504.d
gdb22590.c
gdb22905.d
gdb_baseclass_fields.d
gdb_slice_debuginfo_32.d
gdb_slice_debuginfo_64.d
hello-profile.d
hello.d
helloc.c
iasm.d
iasm64.d
ice4481.d
ice10086a.d
ice10086b.d
ice10857.d
ice15030.d
ice15138.d
ice15176.d
ice15200.d
ice21696.d
ice21727.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
ifti.d Rebase stable6 (#16967) 2024-10-07 12:00:14 +03:00
implicit.d feat(errors): enable verrors=context globally (#20576) 2025-01-03 05:17:59 +08:00
importc-test1.sh
inclusive_incontracts.d
initializer.c
inline.d
inline2.d
inline3.d
inline7625.d
inline14560.d
inner.d
integrate.d
interface.d
interface1.d
interface2.d
interface3.d
interpolatedexpressionsequence.d
interpret.d
interpret2.d
issue11070.d
issue16995.d
issue18919.d Fix Bugzilla 24519 - compiler segfault on default argument with slice operator [] 2024-04-24 22:38:54 +08:00
issue22854.d
issue24168.d
issue24401.d
lazy.d
ldc_github_1677.d
lexer.d Remove debug() / version() integers (#20713) 2025-01-16 15:20:06 +08:00
link846.sh
link2500.d
link2644.d
link6574.d
link7745.d
link7966.d
link8023.d
link9571.d
link10425.d
link10920.d
link11069a.d Actually give deprecation for -noboundscheck (#16687) 2024-07-13 16:08:02 +08:00
link11069b.d
link11127.d
link11395.d
link11931.d
link12010.d
link12037.d
link12144.d
link13043.d
link13350.d
link13394.d
link13400.d
link13415.d
link13843.d
link14074a.d
link14074b.d
link14198a.sh
link14425.d
link14541.d
link14588.d
link14814.d
link14834.sh
link14992.d
link15017.d
link15021.d
link15149.d
link20802.sh
linktypeinfo.d
literal.d Fix ambiguous type deduction around hex strings (#20679) 2025-01-10 23:35:51 +01:00
loopunroll.d
m1.d
manboy.d
mangle.d Fix 23722 - Lambdas are mangled incorrectly when using multiple compi… (#15343) 2024-11-27 12:03:16 +01:00
mars1.d replacing string instructions with MOVs (#20582) 2024-12-24 10:39:26 +08:00
minimal.d
minimal2.d
mixin1.d Fix Bugzilla 21564 - Allow assignment syntax for instantiating mixin templates (#16387) 2024-08-28 15:02:55 +08:00
mixin2.d
mod1.d
nan.d
nested.d
newaa.d
newdel.d Make delete an identifier instead of keyword (#20745) 2025-01-21 23:33:50 +01:00
no_assertz_cov.d
nogc.d Add test case for taking the address of array literal elements (#16785) 2024-08-19 17:00:20 +03:00
noreturn1.d
noreturn2.d Update compiler/test/runnable/noreturn2.d 2024-08-20 10:44:50 +03:00
nrvo.d fix Issue 20567 returning the result of a constructor should be NRVO (#20568) 2024-12-18 00:48:52 -08:00
nulltype.d
objc_autoselector.d Objective-C classes do not have invariants, null check directly. 2024-12-14 19:26:08 +01:00
objc_call.d
objc_call_static.d
objc_class.d
objc_external_class_19700.d
objc_instance_variable.d
objc_objc_msgSend.d
objc_protocol.d
objc_protocol_sections.d
objc_self_test.d
objc_super_call.d
opdisp.d
opover.d Remove D1 operators from the D2 language (#20744) 2025-01-21 06:08:05 +08:00
opover2.d
opover3.d
overload.d
paranoia.d Revise remaining 32{omf,mscoff} usages 2024-05-25 16:35:11 +02:00
pi.d
placenew.d add Placement New 2025-03-03 16:23:02 +10:00
polysemous.d
powinline.d pow: Ensure side effects are evaluated in e1^^0 rewrite 2025-03-29 21:39:12 +01:00
previewin.d
printargs.d
profilegc_stdout.d Use __FILE__, __LINE__ for templated tracegc hooks (#20882) 2025-02-17 11:53:16 +01:00
property.d
property2.d
pubprivtmpl.d
README.md
rvalue1.d build default move constructors (#20634) 2025-01-10 11:19:29 -08:00
s2ir.d
Same.d
sctor.d
sctor2.d
sdtor.d Re-enable tests of temporary in condition and throwing callee (#20721) 2025-01-16 23:35:13 +01:00
sieve.d
sroa13220.d Actually give deprecation for -noboundscheck (#16687) 2024-07-13 16:08:02 +08:00
standalone_modctor.d
staticaa.d Fix Bugzilla 24602 - Internal compiler error: failed to detect static initialization of associative array 2024-06-18 01:24:34 +02:00
staticforeach.d
statictor.d
stress.d
structinit.c Consolidate C struct initializer tests 2024-04-11 18:42:03 +08:00
structlit.d
template1.d
template2.d
template3.d Fix #20907 - DMD segfaults with static array length parameter derived from left-shifted template parameter property (#20919) 2025-02-28 21:46:10 +01:00
template4.d
template6.d
template8.d
template9.d
template10.d feat(errors): enable verrors=context globally (#20576) 2025-01-03 05:17:59 +08:00
template2962.d
template13478.d
test2.d
test3.d
test4.d
test5.d
test7.d
test8.d feat(errors): enable verrors=context globally (#20576) 2025-01-03 05:17:59 +08:00
test10.d
test11.d
test12.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
test13.d
test15.d Fix bugzilla 24477 - Union access of bool shouldn't be allowed in @safe 2024-04-03 10:52:30 +08:00
test16.d
test17.d
test19.d
test20.d
test21.d
test22.d
test23.d
test24.d
test27.d
test28.d
test29.d
test30.d
test31.d
test32.d
test34.d
test35.sh
test36.d Fix bugzilla issue 24882 - COM class is allocated using GC not malloc 2024-11-29 08:37:07 +01:00
test37.d
test38.d
test39.sh
test40.d
test41.d
test42.d
test42a.d
test44b.d
test45.d
test46.d
test48.d
test49.d
test52.d
test57.d
test58.d
test61.d
test435.d
test711.d
test809.d
test3449.d
test3574a.d
test3574b.d
test3574c.d
test3574d.d
test5943.d
test6423.d
test6795.d
test7452.d
test7453.d
test7494.d
test7511.d
test7595.d
test7603.d
test7618.d
test7932.d
test8182.d
test8544.d
test8997.d
test9259.d
test9271.d
test9287.sh
test9309.d
test9495.d
test10378.d
test10386.sh
test10441.d
test10445.d
test10567.sh
test10573.d
test10619.d
test10736.d
test10942.d
test11039.d
test11239.d
test11447a.d
test11447b.d
test11447c.d
test11745.d
test11863.d
test11934.d
test12197.d
test12486.d
test12874.d
test13117.d
test13117b.d
test13504.d
test13613.d Rebase stable6 (#16967) 2024-10-07 12:00:14 +03:00
test13666.sh
test13742.sh
test13774.sh
test13944.d
test14613.d
test14874.d
test14901.d
test14903.d
test15079.d
test15373.d
test15568.d
test15779.d
test15862.d
test15913.d
test15985.d
test16047.d
test16096.sh
test16098.d
test16115.d
test16140.d
test16555.d
test16579.d
test16640.d
test16980.d
test17072.d
test17181.d
test17181b.d
test17246.d
test17258.d
test17337.d
test17338.d Get rid of some obsolete optlink workarounds 2024-05-25 18:07:16 +02:00
test17559.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
test17619.sh
test17684.d
test17868.d
test17868b.d
test17878.d
test17885.d
test17899.d
test17940.d
test17943.d
test17965.d
test17968.d
test18054.d
test18076.sh
test18141.sh
test18296.d
test18322.d
test18335.sh
test18412.sh
test18456.sh
test18472.d
test18534.d
test18545.d
test18746.d
test18868.d
test18868_2.d
test18868_3.d
test18880.d
test18902.sh
test18916.d
test18973.d
test19086.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
test19122.d
test19163.d
test19185.d
test19192.d
test19223.d
test19251.d
test19317.d
test19386.d
test19393.d
test19441.d
test19476.d
test19639.d
test19655a.d
test19672.d
test19679.d
test19729.d
test19734.d
test19735.d
test19774.d
test19782.d
test19822.d
test19825.d
test19891.d
test19946.d
test20025.d
test20036.d
test20130.d
test20365.d
test20401.d
test20520.d
test20565.d
test20603.d
test20649.d
test20687.d
test20734.d
test20809.d
test20811.d
test20831.c Fix #20831 - Mangle conflict after ImportC statement expression gets expanded from macro (#20854) 2025-02-12 20:44:16 +08:00
test20855.d
test20893.d
test21020.d Merge stable (#21048) 2025-03-21 15:48:21 +01:00
test21039.d
test21040.d
test21120.d
test21234.sh
test21301.d
test21357.d
test21367.d
test21403.d
test21416.d
test21424.d
test21479.d
test21506.d
test21515.d
test21586.d
test21723.sh
test21772.d
test21821.d
test21822.d
test21833.d
test22070_2.c
test22071.c
test22163.d
test22175.d
test22205.d
test22209.d
test22227.d
test22278.d
test22321.c
test22326.c
test22342.c
test22376.c
test22428.c
test22500.c
test22513.c
test22531.c
test22538.c
test22567.c
test22585.c
test22592.c
test22597.c Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
test22717.d
test22863.sh
test22897.c
test22923.c
test22930.c
test22945.d
test22972.c
test22974.c
test22976.c
test23010.d
test23011.c
test23014.i
test23025.c
test23028.c
test23036.d add __rvalue(expression) builtin (#17050) 2024-12-15 12:13:28 -08:00
test23045.c
test23058.c
test23083.d
test23148.sh
test23181.d
test23234.d
test23307.d
test23337.d
test23343.c Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
test23347.c
test23387.d
test23402.d
test23514.d
test23618.d
test23710.d
test23722.d Fix 23722 - Lambdas are mangled incorrectly when using multiple compi… (#15343) 2024-11-27 12:03:16 +01:00
test23722_2.d Make lambda symbols stable post a3abf1187e 2024-12-07 10:48:34 +01:00
test23786.c
test23837.d
test23877.c
test23889.c Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
test23959.d
test24029.c
test24078.d
test24129.c
test24139.d
test24181.c
test24184.d
test24371.d
test24498.d Fix bugzilla 24498 - Multidimensional array not scanned by GC (#16400) 2024-04-19 22:13:27 +02:00
test24590.sh Add test case for Bugzilla 24590 2024-06-11 14:37:48 +02:00
test24599.d Rebase stable6 (#16967) 2024-10-07 12:00:14 +03:00
test24819.d fix bugzilla Issue 24819 - Optimizer changes result of float calculations on 32-bit (#17023) 2024-10-25 01:47:41 +02:00
test24884.d Fix bugzilla 24884 - backend generates wrong 32-bit code after inlining math with double[4] 2024-11-29 08:35:16 +01:00
test_cdstrpar.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
test_dip1006.d
test_dip1006b.d
test_dip1006c.d
test_safe_final_switch.sh
test_switches.sh Fix bugzilla 24748 - DMD can't output object files with fully qualified name, making -od overwirte each other file 2024-09-13 15:38:28 +01:00
testaa.d
testaa2.d generate full AA typeinfo in InExp 2025-02-18 09:22:39 +01:00
testaa3.d
testabi.d
testaliascast.d
testappend.d
testargtypes.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
testarray.d
testassert.d
testassert_debug.d
testassert_release.d
testassign.d
testbounds.d
testbounds_off.d
testbounds_on.d
testbounds_safeonly.d
testbtst.d
testcgelem.d
testcheck.c
testclass.d
testconst.d
testconstsection.d
testcontracts.d
testCopyCtor.d
testdefault_after_variadic.d
testdstress.d
testdt.d
testenum.d
testfloat.d
testgc2.d
testgc3.d
testinvariant.d Fixes the invariant not called on extern(C++) classes issue (#20981) 2025-03-13 18:36:45 +08:00
testkeyword.d Fix 23722 - Lambdas are mangled incorrectly when using multiple compi… (#15343) 2024-11-27 12:03:16 +01:00
testline.d
testmain.d
testmainb.d
testminit.d
testmod1.d
testmod2.d
testmodule.d
testOpApply.d
testpdb.d
testpic.d
testprofile.d
testptrref.d
testptrref_gc.d
testreturn.d
testrightthis.d
testsafe.d Fix "Casting class references to void* should be @safe" 2025-01-08 23:24:36 +01:00
testscope.d
testscope2.d
testswitch.d
testthread.d Get rid of obsolete CRuntime_DigitalMars special cases 2024-05-25 15:17:31 +02:00
testthread2.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
testtypeid.d
testTypePropAsm.d
testv.d Deprecate typesafe variadic class arguments (#20673) 2025-02-16 21:35:11 +01:00
testxmm.d
testxmm2.d
tls.d
tls_dup.d
traits.d Fix 23722 - Lambdas are mangled incorrectly when using multiple compi… (#15343) 2024-11-27 12:03:16 +01:00
traits_child.d
traits_getPointerBitmap.d
traits_getUnitTests.d
traits_getVirtualIndex.d
traits_initSymbol.d
tuple_default_parameters.d
uda.d
ufcs.d
uniformctor.d
unique_typeinfo_names.d
variadic.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
version.d
warning1.d
wc.d
wc2.d
wc3.d
whetstone.d Fix Bugzilla 24598 2024-06-11 07:20:29 +02:00
xdtor.d
xpostblit.d
xtest46.d Remove D1 operators from the D2 language (#20744) 2025-01-21 06:08:05 +08:00
xtest46_gc.d
xtest47.d
xtest55.d
xtestenum.d

Tests for successful code generation

Each D file will be compiled and the compilation is expected to succeed. Any diagnostic emitted must match the predefined diagnostic in the test file, otherwise the test will fail.

All compiled executables will be run and are expected to finish successfully with exit code 0. Any output from those binaries must be defined via the RUN_OUTPUT parameter.

Purpose

The point of these files is to test that the compiler emits valid code whose behaviour matches the language specification.

Remarks

Every test in this directory will be executed for all permutations of the arguments provided in the ARGS environment variable unless override by the PERMUTE_ARGS test parameter.

This means that adding tests in this directory can noticeably increase the time required to run the test suite. Hence every test should consider whether running the executable or processing all permutations is beneficial to increase the test coverage.

Refer to test/README.md for general information and the test guidelines.