digitalmars.D.bugs - [Issue 11241] New: DIP 37 causes problems
- d-bugmail puremagic.com (69/69) Oct 13 2013 http://d.puremagic.com/issues/show_bug.cgi?id=11241
- d-bugmail puremagic.com (21/21) Oct 14 2013 http://d.puremagic.com/issues/show_bug.cgi?id=11241
http://d.puremagic.com/issues/show_bug.cgi?id=11241
Summary: DIP 37 causes problems
Product: D
Version: D2
Platform: All
OS/Version: All
Status: NEW
Severity: regression
Priority: P2
Component: DMD
AssignedTo: nobody puremagic.com
ReportedBy: rswhite4 googlemail.com
core/all.d:
----
module core.all;
import std.array;
----
core/memory/test.d
----
module core.memory.test;
import std.array;
----
Compile all.d in 2.063: >dmd core/all.d -main
No errors
Compile all.d in 2.064 beta1: >dmd core/all.d -main
----
D:\D\dmd2\windows\bin\..\..\src\phobos\std\array.d(15): Error: importing
package
'memory' requires a 'package.d' file which cannot be found in
'core\memory\pack
age.d'
import path[0] = D:\D\dmd2\windows\bin\..\..\src\phobos
import path[1] = D:\D\dmd2\windows\bin\..\..\src\druntime\import
----
Compile all.d and test.d in 2.063: >dmd core/all.d core/memory/test.d
----
D:\D\dmd2\windows\bin\..\..\src\phobos\std\array.d(15): Error: can only import
f
rom a module, not from package core.memory
Error: module core.memory from file
D:\D\dmd2\windows\bin\..\..\src\druntime\imp
ort\core\memory.d conflicts with package name memory
D:\D\dmd2\windows\bin\..\..\src\phobos\std\container.d(212): Error: can only
imp
ort from a module, not from package core.memory
Error: module core.memory from file
D:\D\dmd2\windows\bin\..\..\src\druntime\imp
ort\core\memory.d conflicts with package name memory
D:\D\dmd2\windows\bin\..\..\src\phobos\std\typecons.d(46): Error: can only
impor
t from a module, not from package core.memory
Error: module core.memory from file
D:\D\dmd2\windows\bin\..\..\src\druntime\imp
ort\core\memory.d conflicts with package name memory
----
Compile all.d and test.d in 2.064: >dmd core/all.d core/memory/test.d
----
D:\D\dmd2\windows\bin\..\..\src\phobos\std\array.d(15): Error: importing
package
'memory' requires a 'package.d' file which cannot be found in
'core\memory\pack
age.d'
import path[0] = D:\D\dmd2\windows\bin\..\..\src\phobos
import path[1] = D:\D\dmd2\windows\bin\..\..\src\druntime\import
----
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 13 2013
http://d.puremagic.com/issues/show_bug.cgi?id=11241
Kenji Hara <k.hara.pg gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |INVALID
This is invalid issue, because the root package name 'core' is reserved for
druntime.
When packate/module name is found, compiler should pick the first found source
file or directly in the import path.
With 2.063 and earlier, the rule was not correctly implemented.
(If a module name 'core.memory' had been searched from Phobos code, compiler
had wongly skipped the first found directory 'core/memory/' in your project.)
You had been used the 'core' package name in your project. (Un)fortunately it
had not been caused problems, but it should conflict with the druntime.
Therefore the current git-head behavior is essentially correct behavior.
Please change the package name in your project.
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Oct 14 2013








d-bugmail puremagic.com