www.digitalmars.com         C & C++   DMDScript  

D - D compiler v32

reply "Walter" <walter digitalmars.com> writes:
ftp://ftp.digitalmars.com/dmdalpha.zip

o    Fixes numerous problems with bit arrays and arrays in general.
o    Now will inline functions with the -inline switch.
o    DMD will now do the link for you, no need to use SC.
May 16 2002
next sibling parent reply "Carlos" <carlos8294 msn.com> writes:
 o    DMD will now do the link for you, no need to use SC.

the linker isn't working properly. i get this: HELLO.OBJ(hello.d) : fatal error L1101: invalid object module pos: B7 Record type: BC --- errorlevel 2
May 16 2002
parent reply "Walter" <walter digitalmars.com> writes:
"Carlos" <carlos8294 msn.com> wrote in message
news:ac1dsh$218$1 digitaldaemon.com...
 o    DMD will now do the link for you, no need to use SC.

HELLO.OBJ(hello.d) : fatal error L1101: invalid object module pos: B7 Record type: BC --- errorlevel 2

What's the file hello.d look like and the command you used?
May 16 2002
parent reply "Carlos" <carlos8294 msn.com> writes:
"Walter" <walter digitalmars.com> escribió en el mensaje
news:ac215m$h4b$1 digitaldaemon.com...
 "Carlos" <carlos8294 msn.com> wrote in message
 news:ac1dsh$218$1 digitaldaemon.com...
 o    DMD will now do the link for you, no need to use SC.

HELLO.OBJ(hello.d) : fatal error L1101: invalid object module pos: B7 Record type: BC --- errorlevel 2

What's the file hello.d look like and the command you used?

The command line was: c:\dmd>bin\dmd hello -I\dmd\src\phobos The complete results were: link hello,,,user32+kernel32/noi; Microsoft (R) Overlay Linker Version 3.69 Copyright (C) Microsoft Corp 1983-1988. All rights reserved. HELLO.OBJ(hello.d) : fatal error L1101: invalid object module pos: B6 Record type: BC --- errorlevel 2 But if I use the -c option and then use sc, it works fine.
May 17 2002
parent reply "Walter" <walter digitalmars.com> writes:
I don't get it. It works when I try it. Try sending me the hello.obj file.

"Carlos" <carlos8294 msn.com> wrote in message
news:ac4g1u$2lse$1 digitaldaemon.com...
 "Walter" <walter digitalmars.com> escribió en el mensaje
 news:ac215m$h4b$1 digitaldaemon.com...
 "Carlos" <carlos8294 msn.com> wrote in message
 news:ac1dsh$218$1 digitaldaemon.com...
 o    DMD will now do the link for you, no need to use SC.

HELLO.OBJ(hello.d) : fatal error L1101: invalid object module pos: B7 Record type: BC --- errorlevel 2

What's the file hello.d look like and the command you used?

The command line was: c:\dmd>bin\dmd hello -I\dmd\src\phobos The complete results were: link hello,,,user32+kernel32/noi; Microsoft (R) Overlay Linker Version 3.69 Copyright (C) Microsoft Corp 1983-1988. All rights reserved. HELLO.OBJ(hello.d) : fatal error L1101: invalid object module pos: B6 Record type: BC --- errorlevel 2 But if I use the -c option and then use sc, it works fine.

May 17 2002
parent "Alix Pexton" <Alix seven-point-star.co.uk> writes:
I had the same problem at first, it worked after I changed my path
environment variable so that DM\BIN came before Visual Studio. At least
that all I remember changing...

Alix Pexton [prolific writer, web advocate and confused too]...
"Without Hollywood [LA] would be a mail-order city, everything in the
catalogue you could get better somewhere else"
Philip Marlowe in "THE LITTLE SISTER" by Raymond Chandler...

 The command line was:
 c:\dmd>bin\dmd hello -I\dmd\src\phobos

 The complete results were:
 link hello,,,user32+kernel32/noi;

 Microsoft (R) Overlay Linker  Version 3.69
 Copyright (C) Microsoft Corp 1983-1988.  All rights reserved.

 HELLO.OBJ(hello.d) : fatal error L1101: invalid object module
  pos: B6 Record type: BC
 --- errorlevel 2

 But if I use the -c option and then use sc, it works fine.


May 27 2002
prev sibling next sibling parent reply Patrick Down <pat codemoon.com> writes:
"Walter" <walter digitalmars.com> wrote in news:ac18or$2v84$1
 digitaldaemon.com:

 ftp://ftp.digitalmars.com/dmdalpha.zip
 
 o    Fixes numerous problems with bit arrays and arrays in general.
 o    Now will inline functions with the -inline switch.
 o    DMD will now do the link for you, no need to use SC.
 
 

Walter are you going to make dmd pick up the environment from an ini file like sc? I like that way of handling it.
May 17 2002
parent "Walter" <walter digitalmars.com> writes:
"Patrick Down" <pat codemoon.com> wrote in message
news:Xns9211E8DED8DF1patcodemooncom 63.105.9.61...
 Walter are you going to make dmd pick up the environment from
 an ini file like sc?  I like that way of handling it.

You're right, I should make that work.
May 17 2002
prev sibling parent reply Patrick Down <pat codemoon.com> writes:
The following program generates...
test.d(10): function toString parameters char[]() do not 
match argument types (uint)

I took me a couple of minutes to figure out that
string.toString(uint) was conflicting with 
Object.toString().  Should the compiler be able
to resolve this correctly?

import string;

class Foo
{
  uint test = 12;
  
  void Func()
  {
    char[] tmp = toString(test);
    printf("%.*s\n",tmp);
  }
}

int main(char[][] args)
{ 
  Foo a;
  
  a.Func();
  
  return 0;
} 
May 21 2002
next sibling parent "Pavel Minayev" <evilone omen.ru> writes:
"Patrick Down" <pat codemoon.com> wrote in message
news:Xns9216B5D016E8patcodemooncom 63.105.9.61...

 The following program generates...
 test.d(10): function toString parameters char[]() do not
 match argument types (uint)

 I took me a couple of minutes to figure out that
 string.toString(uint) was conflicting with
 Object.toString().  Should the compiler be able
 to resolve this correctly?

I'm not sure... C++ doesn't, AFAIK. Member functions override all global declarations, when conflict occurs.
May 22 2002
prev sibling parent "Walter" <walter digitalmars.com> writes:
I chose the path that if it's ambiguous at all, generate an error. I think
in the end code will be much clearer if it is disambiguated with module
prefixes like string.toString(...), etc.

"Patrick Down" <pat codemoon.com> wrote in message
news:Xns9216B5D016E8patcodemooncom 63.105.9.61...
 The following program generates...
 test.d(10): function toString parameters char[]() do not
 match argument types (uint)

 I took me a couple of minutes to figure out that
 string.toString(uint) was conflicting with
 Object.toString().  Should the compiler be able
 to resolve this correctly?

 import string;

 class Foo
 {
   uint test = 12;

   void Func()
   {
     char[] tmp = toString(test);
     printf("%.*s\n",tmp);
   }
 }

 int main(char[][] args)
 {
   Foo a;

   a.Func();

   return 0;
 }

May 22 2002