www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 24645] New: Hidden static assert error messages if more than

https://issues.dlang.org/show_bug.cgi?id=24645

          Issue ID: 24645
           Summary: Hidden static assert error messages if more than 20
                    errors
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: feklushkin.denis gmail.com

Imports are processed by frontend before static asserts. As result, for simple
example (two lines of code only):

static assert(false, "some assertion failed");
import core.stdc.stdatomic;

user during compilation isn't sees any static assert error messages:

 ldc2 --mtriple=riscv32-unknown-newlib-elf -c assertion_test_main.d
/home/denizzz/ldc2_standalone/bin/../import/core/stdc/stdio.d(31): Error: module `core.stdc.stdint` import `intptr_t` not found /home/denizzz/ldc2_standalone/bin/../import/core/stdc/stdio.d(798): Error: module `core.sys.posix.sys.types` import `ssize_t` not found, did you mean alias `object.size_t`? /home/denizzz/ldc2_standalone/bin/../import/core/stdc/stdio.d(802): Error: undefined identifier `c_long` /home/denizzz/ldc2_standalone/bin/../import/core/stdc/stdio.d(2011): Error: module `core.stdc.stddef` import `wchar_t` not found [~16 lines skipped] With --verrors=0 option user able to see appropriate static assert line at the end of compiler output, but it's confusing because it's unexpected not obvious behaviour Is it possible to move static errors messages higher? First mentioned here: https://github.com/ldc-developers/ldc/issues/4690 --
Jul 02