D issues are now tracked on GitHub. This Bugzilla instance remains as a read-only archive.
Issue 5205 - D runtime duplication in zip
Summary: D runtime duplication in zip
Status: RESOLVED FIXED
Alias: None
Product: D
Classification: Unclassified
Component: dmd (show other issues)
Version: D2
Hardware: Other Linux
: P2 normal
Assignee: Walter Bright
URL:
Keywords:
: 5208 (view as issue list)
Depends on:
Blocks:
 
Reported: 2010-11-11 19:16 UTC by Jesse Phillips
Modified: 2011-08-23 19:16 UTC (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description Jesse Phillips 2010-11-11 19:16:02 UTC
The zip file distributed for DMD includes the source code for druntime. There is actually an old version of the code lingering in the import section, which now also contains generated interface files. dmd may be preferring the .d files over .di causing old code to be used.
Comment 1 Steven Schveighoffer 2010-11-12 05:15:06 UTC
The import directory is what is used for imports.  The compiler doesn't use the src directory.

What files do you see that are old?  IIRC, the only non-generated file is object.di, which is maintained seperately from object_.d in the src directory.
Comment 2 Jesse Phillips 2010-11-12 10:50:16 UTC
There are both .di file and .d files in the import directory. The .d files are old, while the .di files are generated.

It looks like this only starts under core/sys

Anyway it was more confusing then a problem a guess. I thought enum values might be used from the .di files, since you shouldn't, no storage right?, be able to get its value from the library.
Comment 3 Steven Schveighoffer 2010-11-12 11:42:58 UTC
You are absolutely right.  When looking in svn, those files have been removed.  It's probably in the way the zipfile is packaged, it's not using a clean directory structure.

Here is the complete list of d files that should be removed (all in import directory):
core/sys/windows/windows.d
core/sys/osx/mach/kern_return.d
core/sys/osx/mach/port.d
core/sys/osx/mach/semaphore.d
core/sys/osx/mach/thread_act.d
core/sys/posix/utime.d
core/sys/posix/ucontext.d
core/sys/posix/netinet/tcp.d
core/sys/posix/netinet/in_.d
core/sys/posix/sys/ipc.d
core/sys/posix/sys/shm.d
core/sys/posix/sys/stat.d
core/sys/posix/sys/select.d
core/sys/posix/sys/time.d
core/sys/posix/sys/uio.d
core/sys/posix/sys/wait.d
core/sys/posix/sys/mman.d
core/sys/posix/sys/types.d
core/sys/posix/sys/socket.d
core/sys/posix/poll.d
core/sys/posix/time.d
core/sys/posix/signal.d
core/sys/posix/stdlib.d
core/sys/posix/stdio.d
core/sys/posix/fcntl.d
core/sys/posix/pthread.d
core/sys/posix/dlfcn.d
core/sys/posix/semaphore.d
core/sys/posix/unistd.d
core/sys/posix/inttypes.d
core/sys/posix/arpa/inet.d
core/sys/posix/net/if_.d
core/sys/posix/dirent.d
core/sys/posix/termios.d
core/sys/posix/config.d
core/sys/posix/setjmp.d
core/sys/posix/sched.d
core/sys/posix/pwd.d
core/stdc/stdarg.d
core/stdc/complex.d
core/stdc/limits.d
core/stdc/math.d
core/stdc/errno.d
core/stdc/stdint.d
core/stdc/string.d
core/stdc/time.d
core/stdc/signal.d
core/stdc/stdlib.d
core/stdc/stdio.d
core/stdc/ctype.d
core/stdc/inttypes.d
core/stdc/locale.d
core/stdc/wctype.d
core/stdc/stddef.d
core/stdc/float_.d
core/stdc/config.d
core/stdc/wchar_.d
core/stdc/tgmath.d
core/stdc/fenv.d

Reassigning to Walter so he sees this.
Comment 4 Steven Schveighoffer 2010-11-15 08:06:40 UTC
*** Issue 5208 has been marked as a duplicate of this issue. ***
Comment 5 Vladimir Panteleev 2011-08-23 19:16:38 UTC
dmd.2.054.zip looks OK in this regard, I guess this was fixed a while ago.