Re: Visual D showing weird errors

2021-04-26 Thread Raimondo Mancino via Digitalmars-d-learn

On Monday, 26 April 2021 at 15:54:36 UTC, Adam D. Ruppe wrote:
Do you have a separate object.d in your current directory? That 
can cause all kinds of weird errors.


Otherwise I suspect this is a conflict between two versions of 
the compiler. If you had one installed before then updated it 
or maybe if visual d installed a different one, this could be a 
problem. So either some old files were left behind or there's 
two copies installed and VS is running one but pointing at the 
other. Or something.


The noreturn thing is relatively new making me think this might 
be the case.


The compiler and stdlib are ridiculously tightly coupled so any 
version mismatch can cause trouble.


just guessing though.


Actually, you were right. I was about to write that updating 
Visual D to the latest version worked.


I'm sorry for this silly thread.

Thank you all for your help and suggestions.


Re: Visual D showing weird errors

2021-04-26 Thread Raimondo Mancino via Digitalmars-d-learn

On Monday, 26 April 2021 at 14:17:34 UTC, Imperatorn wrote:
Also, be sure to join on Discord as well 
(https://discord.gg/bMZk9Q4) if you're not already there!

Thank you, I think I'll join.



Re: Visual D showing weird errors

2021-04-26 Thread Raimondo Mancino via Digitalmars-d-learn

On Monday, 26 April 2021 at 10:44:14 UTC, Mike Parker wrote:
You might try to build outside of VS and see if you get the 
same errors.


The weird thing is that I get these errors just in the errors 
frame, but building works just fine without errors.


If I run devenv.exe directly on the solution, or select "build" 
from the menu, it builds fine; just, I don't get autocompletion 
or go-to-definition for some symbols.


Debugging works as well (although I see mangled symbol names, but 
I guess it's how it is supposed to work).


Re: Visual D showing weird errors

2021-04-26 Thread Raimondo Mancino via Digitalmars-d-learn

On Monday, 26 April 2021 at 08:40:01 UTC, Imperatorn wrote:
On Monday, 26 April 2021 at 08:00:08 UTC, Raimondo Mancino 
wrote:
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.


[...]


What compiler and version are you using?


According to -v: DMD64 D Compiler v2.096.0-dirty


Visual D showing weird errors

2021-04-26 Thread Raimondo Mancino via Digitalmars-d-learn
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.