February 14, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9510

           Summary: Undefined symbols encountered
           Product: D
           Version: D2
          Platform: x86_64
        OS/Version: Mac OS X
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: nobody@puremagic.com
        ReportedBy: arthur@itssomething.ca


--- Comment #0 from Arthur Castonguay <arthur@itssomething.ca> 2013-02-14 07:16:38 PST ---
Running the latest 2.061 compiler on my Mac, I have a simple program that imports std.stdio, does a bit of math and then writeln's a result.  It compiles and runs fine on my Linux box.  On the Mac, I'm getting:

dmd -w -O -inline -noboundscheck  p001.d
Undefined symbols for architecture x86_64:
  "_D4core5bitop3bsrFNaNbmZi", referenced from:
      _D3std5array17__T8popFrontTAyaZ8popFrontFNaNbNeKAyaZv in p001.o
      _D3std5array16__T8popFrontTAaZ8popFrontFNaNbNeKAaZv in p001.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status

Demangling these:
_D4core5bitop3bsrFNaNbmZi
    pure nothrow int core.bitop.bsr(ulong)
_D3std5array17__T8popFrontTAyaZ8popFrontFNaNbNeKAyaZv
   pure nothrow @trusted void
std.array.popFront!(immutable(char)[]).popFront(ref immutable(char)[])
_D3std5array16__T8popFrontTAaZ8popFrontFNaNbNeKAaZv
   pure nothrow @trusted void std.array.popFront!(char[]).popFront(ref char[])

Interestingly, I'm not even calling using popFront directly in the program.

It was working with a previous version of the compiler (2.060).  I'd installed the latest since I was getting issues with a program that actually uses popFront and thought perhaps the newer version would address this issue.  It appears there be dragons in this area.

Yell if there's additional information you require.  A skeleton of the program I have is:

import std.stdio;
immutable auto N = 10;
auto func(int n) {
  auto d = N / n;
  return n * d * (d + 1)/2;
}
void main() {
  writeln(func(2)+func(7)-func(14));
}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
February 14, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9510



--- Comment #1 from David Nadlinger <code@klickverbot.at> 2013-02-14 07:24:00 PST ---
This looks like an issue caused by stale files.

Please make sure that you don't have any old druntime module/library files lying around in your search path. If you just copied the 2.061 files over the 2.060 ones, try a completely pristine install to make sure.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
February 14, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9510



--- Comment #2 from Arthur Castonguay <arthur@itssomething.ca> 2013-02-14 12:47:42 PST ---
(In reply to comment #1)
> This looks like an issue caused by stale files.
> 
> Please make sure that you don't have any old druntime module/library files lying around in your search path. If you just copied the 2.061 files over the 2.060 ones, try a completely pristine install to make sure.

Will check.  However, if this does fix the problem, I'd argue there is a bug in the installer script since I used the DMD installer on the Mac to install this... not from a tarball.  It should be ensuring the old stuff is nixed.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
February 15, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9510


Arthur Castonguay <arthur@itssomething.ca> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


--- Comment #3 from Arthur Castonguay <arthur@itssomething.ca> 2013-02-15 03:12:22 PST ---
Confirmed that completely removing D and reinstalling addressed the issue. Apparently the installer doesn't tidy up first.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
February 15, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9510



--- Comment #4 from Arthur Castonguay <arthur@itssomething.ca> 2013-02-15 03:13:41 PST ---
*** Issue 9509 has been marked as a duplicate of this issue. ***

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
July 14, 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9510


Stewart Gordon <smjg@iname.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |smjg@iname.com
           Platform|x86_64                      |All
         OS/Version|Mac OS X                    |All


--- Comment #5 from Stewart Gordon <smjg@iname.com> 2013-07-14 06:29:19 PDT ---
Was happening under Windows as well, and when just unzipping the files and not using an installer.  But I remain confused - even if there were obsolete files in the DMD directory, I would think it wouldn't be a problem as there would be no references to these files in the files that actually are being used.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Top | Discussion index | About this forum | D home