Re: __gshared static

2015-04-24 Thread Steven Schveighoffer via Digitalmars-d-learn
On 4/24/15 1:22 PM, =?UTF-8?B?Ik3DoXJjaW8=?= Martins\ 
marcio...@gmail.com\ wrote:

Hi!

I just stumbled across what seems like a misunderstanding on my side
about these keywords. Can someone help clarify these for me?

```
__gshared static int foo;
__gshared int foo;
```

What are the storage and semantic differences between those two, if any?


These are the same, __gshared overrides static.

-Steve


Re: __gshared static

2015-04-24 Thread via Digitalmars-d-learn
On Friday, 24 April 2015 at 18:05:22 UTC, Steven Schveighoffer 
wrote:
On 4/24/15 1:22 PM, =?UTF-8?B?Ik3DoXJjaW8=?= Martins\ 
marcio...@gmail.com\ wrote:

Hi!

I just stumbled across what seems like a misunderstanding on 
my side

about these keywords. Can someone help clarify these for me?

```
__gshared static int foo;
__gshared int foo;
```

What are the storage and semantic differences between those 
two, if any?


These are the same, __gshared overrides static.

-Steve


Thanks Steve!


Re: __gshared static

2015-04-24 Thread Steven Schveighoffer via Digitalmars-d-learn

On 4/24/15 2:47 PM, bearophile wrote:

Steven Schveighoffer:


These are the same, __gshared overrides static.


Isn't forbidding __gshared static a good idea then, to avoid user
confusion?


Surely, prohibiting non-functioning attributes is good when it's obvious 
that they do nothing.


BUT... there is an issue:

static: __gshared int x;

Should this be an error? I believe inside the compiler, the reason 
unused attributes are ignored are because this is handled the same way, 
and making it error would make all of them error. But that's kind of a 
guess.


-Steve



Re: __gshared static versus static __gshared

2011-01-29 Thread Lars T. Kyllingstad
On Sat, 29 Jan 2011 08:47:21 +, %u wrote:

 Is this a bug?
 
__gshared static i;
 
 makes i be thread-local, while
 
static __gshared i;
 
 makes it be shared.

If that's the case, then it is definitely a bug.  The order of attributes 
shouldn't matter.

-Lars