www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 13034] New: [GIT HEAD] core.stdc.stdio - deprecation warning

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

          Issue ID: 13034
           Summary: [GIT HEAD] core.stdc.stdio - deprecation warning with
                    dmd -inline
           Product: D
           Version: D2
          Hardware: All
                OS: Windows
            Status: NEW
          Severity: regression
          Priority: P1
         Component: DMD
          Assignee: nobody puremagic.com
          Reporter: gassa mail.ru

I just compiled the latest git HEAD version of druntime+phobos on Windows.
After that, when I import std.stdio in any D program and compile using DMD with
"-inline" option, it gives me deprecation warnings in core.stdc.stdio.
In fact, I see the same warnings even when compiling druntime itself.

I followed these instructions to build DMD&friends from source:
http://wiki.dlang.org/Building_DMD#Windows_2 .
Every other aspect of the compiler is working fine for me so far.
I'll note that it's the first time I built it from source though.

Deprecation warnings:

-----(win32_version)-----
...\src\druntime\import\core\stdc\stdio.d(684): Deprecation: Read-modify-write
operations are not allowed for shared variables. Use
core.atomic.atomicOp!"&="((*stream)._flag, ~_IOERR) instead.
...\src\druntime\import\core\stdc\stdio.d(685): Deprecation: Read-modify-write
operations are not allowed for shared variables. Use
core.atomic.atomicOp!"&="((*stream)._flag, ~(_IOERR | _IOEOF)) instead.
-----

-----(win64_version)-----
...\src\druntime\import\core\stdc\stdio.d(700): Deprecation: Read-modify-write
operations are not allowed for shared variables. Use
core.atomic.atomicOp!"&="((*stream)._flag, ~_IOERR) instead.
...\src\druntime\import\core\stdc\stdio.d(701): Deprecation: Read-modify-write
operations are not allowed for shared variables. Use
core.atomic.atomicOp!"&="((*stream)._flag, ~(_IOERR | _IOEOF)) instead.
...\src\druntime\import\core\stdc\stdio.d(720): Deprecation: Read-modify-write
operations are not allowed for shared variables. Use
core.atomic.atomicOp!"-="((*fp)._cnt, 1) instead.
...\src\druntime\import\core\stdc\stdio.d(721): Deprecation: Read-modify-write
operations are not allowed for shared variables. Use
core.atomic.atomicOp!"+="((*fp)._ptr, 1) instead.
...\src\druntime\import\core\stdc\stdio.d(728): Deprecation: Read-modify-write
operations are not allowed for shared variables. Use
core.atomic.atomicOp!"-="((*fp)._cnt, 1) instead.
...\src\druntime\import\core\stdc\stdio.d(729): Deprecation: Read-modify-write
operations are not allowed for shared variables. Use
core.atomic.atomicOp!"+="((*fp)._ptr, 1) instead.
-----

To reproduce:

(1) Either run "make -f win32.mak" (or "make -f win64.mak") for a clean
druntime source,
(2) or install git HEAD druntime and phobos, and then compile the following:
-----
import std.stdio;
void main () {}
-----
with "dmd -inline" (or "dmd -inline -m64").

Git revisions:
dmd 42728388c3df73fae7d18623cda39c34561a74c1
druntime 2ab86f5583676b49656d8a245c8adb3c89c61256
phobos f518343f3e85c7b0ae0a9d2486dd18390dd592d6

Ivan Kazmenko.

--
Jul 03 2014