Thread overview
[Issue 20195] -preview=nosharedaccess has some access problems
Sep 08, 2019
Manu
Jun 06, 2020
Walter Bright
Jun 06, 2020
Dlang Bot
Jun 06, 2020
Dlang Bot
Jul 02, 2020
Dlang Bot
Jul 03, 2020
Dlang Bot
Jul 03, 2020
Dlang Bot
Sep 13, 2020
Dlang Bot
Sep 18, 2020
Dlang Bot
September 08, 2019
https://issues.dlang.org/show_bug.cgi?id=20195

Manu <turkeyman@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |rejects-valid

--
June 06, 2020
https://issues.dlang.org/show_bug.cgi?id=20195

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla@digitalmars.com

--- Comment #1 from Walter Bright <bugzilla@digitalmars.com> ---
Partial fix: https://github.com/dlang/dmd/pull/11239

(not the ref issue)

--
June 06, 2020
https://issues.dlang.org/show_bug.cgi?id=20195

--- Comment #2 from Dlang Bot <dlang-bot@dlang.rocks> ---
@WalterBright updated dlang/dmd pull request #11239 "allow initialization of shared variables" mentioning this issue:

- Issue 20195: allow initialization of shared variables (partial fix)

https://github.com/dlang/dmd/pull/11239

--
June 06, 2020
https://issues.dlang.org/show_bug.cgi?id=20195

--- Comment #3 from Dlang Bot <dlang-bot@dlang.rocks> ---
dlang/dmd pull request #11239 "allow initialization of shared variables" was merged into master:

- 9c79cb16c336244572d9578e3c3b1d7b4d9d20f2 by Walter Bright:
  Issue 20195: allow initialization of shared variables (partial fix)

https://github.com/dlang/dmd/pull/11239

--
June 08, 2020
https://issues.dlang.org/show_bug.cgi?id=20195

moonlightsentinel@disroot.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |moonlightsentinel@disroot.o
                   |                            |rg
           See Also|                            |https://issues.dlang.org/sh
                   |                            |ow_bug.cgi?id=20908

--
July 02, 2020
https://issues.dlang.org/show_bug.cgi?id=20195

--- Comment #4 from Dlang Bot <dlang-bot@dlang.rocks> ---
@UplinkCoder updated dlang/dmd pull request #10412 "Allow ref-returns of shared Variables" mentioning this issue:

- Issue 20195 - Allow explicit ref-returns of shared Variables (partial fix)

  This is okay because we are passing a pointer and not the actual value.

  Currently excludes `ref` inferred from `auto ref`.

https://github.com/dlang/dmd/pull/10412

--
July 03, 2020
https://issues.dlang.org/show_bug.cgi?id=20195

--- Comment #5 from Dlang Bot <dlang-bot@dlang.rocks> ---
dlang/dmd pull request #10412 "Allow ref-returns of shared Variables" was merged into master:

- 02fd0cd4b88d6f166a6d3905487279d7c723c46d by Stefan Koch:
  Issue 20195 - Allow explicit ref-returns of shared Variables (partial fix)

  This is okay because we are passing a pointer and not the actual value.

  Currently excludes `ref` inferred from `auto ref`.

https://github.com/dlang/dmd/pull/10412

--
July 03, 2020
https://issues.dlang.org/show_bug.cgi?id=20195

--- Comment #6 from Dlang Bot <dlang-bot@dlang.rocks> ---
@andralex updated dlang/dmd pull request #11368 "Flagpack" mentioning this issue:

- Issue 20195 - Allow explicit ref-returns of shared Variables (partial fix)

  This is okay because we are passing a pointer and not the actual value.

  Currently excludes `ref` inferred from `auto ref`.

https://github.com/dlang/dmd/pull/11368

--
September 13, 2020
https://issues.dlang.org/show_bug.cgi?id=20195

Dlang Bot <dlang-bot@dlang.rocks> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull

--- Comment #7 from Dlang Bot <dlang-bot@dlang.rocks> ---
@Geod24 updated dlang/dmd pull request #11726 "Fix 20908 - Improve `shared` access detection" fixing this issue:

- Fix 20195 - Improve `shared` access detection

  There were quite a few positives with the previous approach.
  Essentially, we cannot perform it during expression semantic,
  within things like `visit(PtrExp)` methods, because we need
  to be aware of our context.

  Instead of adding yet another flag to `Scope` (which would need
  to be flipped on and off), we use a visitor called from a higher
  level (namely, the unary / binary expression semantic).

  This should also make it easier to extend in the future,
  for example by adding support for bypassing the check if
  the constructor is `pure`.

https://github.com/dlang/dmd/pull/11726

--
September 18, 2020
https://issues.dlang.org/show_bug.cgi?id=20195

Dlang Bot <dlang-bot@dlang.rocks> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #8 from Dlang Bot <dlang-bot@dlang.rocks> ---
dlang/dmd pull request #11726 "Fix 20195 - Improve `shared` access detection" was merged into master:

- 0257cec542a1fc17ba02b58a22337297463d69df by Geod24:
  Fix 20195 - Improve `shared` access detection

  There were quite a few positives with the previous approach.
  Essentially, we cannot perform it during expression semantic,
  within things like `visit(PtrExp)` methods, because we need
  to be aware of our context.

  Instead of adding yet another flag to `Scope` (which would need
  to be flipped on and off), we use a visitor called from a higher
  level (namely, the unary / binary expression semantic).

  This should also make it easier to extend in the future,
  for example by adding support for bypassing the check if
  the constructor is `pure`.

https://github.com/dlang/dmd/pull/11726

--