Bug 13896 – DMD-FE accepts multiple extern(C) definitions

Status
RESOLVED
Resolution
DUPLICATE
Severity
normal
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2014-12-26T09:47:00Z
Last change time
2015-01-26T11:24:03Z
Assigned to
nobody
Creator
alphaglosined

Comments

Comment #0 by alphaglosined — 2014-12-26T09:47:04Z
Multiple extern(C) definitions not throwing an error. http://forum.dlang.org/post/[email protected] Example: https://github.com/nomad-software/x11/blob/160f5109cb9f09ab69f9a16c685c5a6b39179db6/source/x11/Xlib.d#L1534 extern Window XCreateWindow( Display* /* display */, Window /* parent */, int /* x */, int /* y */, uint /* width */, uint /* height */, uint /* border_width */, int /* depth */, uint /* class */, Visual* /* visual */, c_ulong /* valuemask */, XSetWindowAttributes* /* attributes */ ); /++ + Create windows and window attributes structure. + + This overload allow you to pass the special parameter "CopyFromParent". + Watch out as it will accept any kind of XID, hence it is not type safe. +/ extern Window XCreateWindow(Display* display, Window parent, int x, int y, uint width, uint height, uint border_width, int depth, uint _class, XID copyFromParent, c_ulong valuemask, XSetWindowAttributes* attributes); Ldc catches this, gdc and dmd do not. Tested on Windows, Linux 2.065 and 2.066.1.
Comment #1 by yebblies — 2015-01-26T11:24:03Z
*** This issue has been marked as a duplicate of issue 2789 ***