www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Beta problems

reply "Namespace" <rswhite4 googlemail.com> writes:
I can't reproduce the error but with the current beta I get in a 
specific project this output:

----
Compiling Audio\Core\core.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\package.d'
import path[0] = D:\D\dmd2\src\ext
import path[1] = D:\D\dmd2\windows\bin\..\..\src\phobos
import path[2] = D:\D\dmd2\windows\bin\..\..\src\druntime\import
binary    D:\D\dmd2\windows\bin\dmd.exe
version   v2.064
config    D:\D\dmd2\windows\bin\sc.ini
parse     core
importall core
import    
object	(D:\D\dmd2\windows\bin\..\..\src\druntime\import\object.di)
import    
derelict.openal.al	(D:\D\dmd2\src\ext\derelict\openal\al.d)
import    
derelict.openal.types	(D:\D\dmd2\src\ext\derelict\openal\types.d)
import    
derelict.openal.functions	(D:\D\dmd2\src\ext\derelict\openal\functions.d)
import    
derelict.util.loader	(D:\D\dmd2\src\ext\derelict\util\loader.d)
import    
std.array	(D:\D\dmd2\windows\bin\..\..\src\phobos\std\array.d)
import    core.memory	(core\memory\package.d)
Building Debug\Audio-Core-core.obj failed!
----

If I try to reproduce it with a reduced test case, I get the 
right output:
----
import    std.array     
(D:\D\dmd2\windows\bin\..\..\src\phobos\std\array.d)
import    core.memory   
(D:\D\dmd2\windows\bin\..\..\src\druntime\import\core\me
mory.d)
----

What could cause the error? Any ideas? I have no idea...
Oct 12 2013
next sibling parent "Namespace" <rswhite4 googlemail.com> writes:
Forget to say: I use VisualD.
Oct 12 2013
prev sibling parent reply Rainer Schuetze <r.sagitario gmx.de> writes:
On 13.10.2013 01:49, Namespace wrote:
 I can't reproduce the error but with the current beta I get in a
 specific project this output:

 ----
 Compiling Audio\Core\core.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\package.d'
 import path[0] = D:\D\dmd2\src\ext
 import path[1] = D:\D\dmd2\windows\bin\..\..\src\phobos
 import path[2] = D:\D\dmd2\windows\bin\..\..\src\druntime\import
 binary    D:\D\dmd2\windows\bin\dmd.exe
 version   v2.064
 config    D:\D\dmd2\windows\bin\sc.ini
 parse     core
 importall core
 import object
 (D:\D\dmd2\windows\bin\..\..\src\druntime\import\object.di)
 import derelict.openal.al    (D:\D\dmd2\src\ext\derelict\openal\al.d)
 import derelict.openal.types    (D:\D\dmd2\src\ext\derelict\openal\types.d)
 import derelict.openal.functions
 (D:\D\dmd2\src\ext\derelict\openal\functions.d)
 import derelict.util.loader    (D:\D\dmd2\src\ext\derelict\util\loader.d)
 import std.array    (D:\D\dmd2\windows\bin\..\..\src\phobos\std\array.d)
 import    core.memory    (core\memory\package.d)
 Building Debug\Audio-Core-core.obj failed!
 ----

 If I try to reproduce it with a reduced test case, I get the right output:
 ----
 import    std.array (D:\D\dmd2\windows\bin\..\..\src\phobos\std\array.d)
 import    core.memory
 (D:\D\dmd2\windows\bin\..\..\src\druntime\import\core\me
 mory.d)
 ----

 What could cause the error? Any ideas? I have no idea...
My best guess is that you have a directory names "core\memory" in your source directory. I'm not sure if it qualifies as a dmd regression, maybe it should continue searching for core.memory in the other import folders.
Oct 13 2013
parent "Namespace" <rswhite4 googlemail.com> writes:
Nice try. I get another error which is maybe related.
core/memory.d with nothing else than import std.array causes
----
D:\D\dmd2\windows\bin\..\..\src\phobos\std\array.d(15): Error: 
module memory fro
m file core\memory.d must be imported as module 'memory'
----

And with core/all.d:
----
module core.all;

import std.array;
----

and core/memory/test.d

I get it:
----
C:\Users\Besitzer\Desktop>dmd core/all.d core/memory/test.d -v
binary    D:\D\dmd2\windows\bin\dmd.exe
version   v2.064
config    D:\D\dmd2\windows\bin\sc.ini
parse     all
parse     test
importall all
import    object        
(D:\D\dmd2\windows\bin\..\..\src\druntime\import\object.
di)
import    std.array     
(D:\D\dmd2\windows\bin\..\..\src\phobos\std\array.d)
import    core.memory   (core\memory\package.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
----

Even if I compile only core/all.d:
----
C:\Users\Besitzer\Desktop>dmd core/all.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
----
Oct 13 2013