Visual D showing weird errors

Raimondo Mancino rmancino at gmail.com
Mon Apr 26 08:00:08 UTC 2021


Hello, I'm new to the language; I just started learning it a few 
months ago. I'm doing okay with it, I find it very versatile and 
fast to learn. I come from Java and C/C++ and I think D solves 
tons of problems I had with these.

I was trying the Visual D extension to Visual Studio, but after 
the first code generation (DLL library, x86 & x64 both checked), 
I get this weird error:

```
C:\D\dmd2\src\druntime\import\core\sys\windows\dll.d:
\object.d(18): can only `*` a pointer, not a `typeof(null)`
```

So I opened the object.d in VS and apparently, this is the line 
of code it's yelling at:

```
alias noreturn = typeof(*null);  /// bottom type
```

I am unsure how to solve this problem. It doesn't appear to 
happen if I choose "console application" instead of "DLL Library".

Although, errors do appear if I try to inspect, for example, 
stdio.d:

```
Error: C:\D\dmd2\src\druntime\import\object.d(3460): template 
instance `object._dup!(const(char), immutable(char))` error 
instantiating
C:\D\dmd2\src\druntime\import\object.d(3438): instantiated from 
here: `_trustedDup!(const(char), immutable(char))`
C:\D\dmd2\src\phobos\std\exception.d(516): instantiated from 
here: `idup!(const(char))`
C:\D\dmd2\src\phobos\std\exception.d(437): instantiated from 
here: `bailOut!(Exception)`
--> instantiated from here: `enforce!(void*)`
```

and also:

```
Error: C:\D\dmd2\src\phobos\std\exception.d(437): template 
instance `std.exception.bailOut!(ErrnoException)` error 
instantiating
--> instantiated from here: `enforce!(shared(_iobuf)*)`
```

and others.


Since these are thrown by the standard library, I suspect this 
could be a bug; but maybe I'm just missing something?

Thank you for your help.


More information about the Digitalmars-d-learn mailing list