mirror of
https://github.com/dlang/dmd.git
synced 2025-04-26 05:00:16 +03:00

* Deprecate string literals as assert conditions Fix Issue 14387 - Disallow string literals as assert conditions * Avoid running expression semantic, only deprecate literals Ignore enum strings. * Fix runnable test
22 lines
652 B
D
22 lines
652 B
D
/*
|
|
REQUIRED_ARGS: -de
|
|
TEST_OUTPUT:
|
|
---
|
|
fail_compilation/array_bool.d(13): Deprecation: assert condition cannot be a string literal
|
|
fail_compilation/array_bool.d(13): If intentional, use `"foo" !is null` instead to preserve behaviour
|
|
fail_compilation/array_bool.d(14): Deprecation: static assert condition cannot be a string literal
|
|
fail_compilation/array_bool.d(14): If intentional, use `"foo" !is null` instead to preserve behaviour
|
|
---
|
|
*/
|
|
void main()
|
|
{
|
|
assert("foo");
|
|
static assert("foo");
|
|
|
|
assert("foo".ptr); // OK
|
|
static assert("foo".ptr); // OK
|
|
|
|
enum e = "bar";
|
|
static assert(e); // OK
|
|
assert(e); // OK
|
|
}
|