// String equality must materialise a module def literal instead of treating // its name as a frame-local string header. Use a duplicated local so pointer // equality cannot accidentally satisfy the content comparison. package str_def_equality_test; import strings; def expected: str = "dynamic string versus def"; @test fn dynamic_string_and_def_compare_by_content() void = { let observed: str = strings.dup(expected); assert(observed == expected); assert(expected == observed); assert(!(observed != expected)); assert(!(expected != observed)); let different: str = strings.concat(observed, "!"); assert(different != expected); assert(expected != different); };