Thread overview
OS X problem
Aug 31, 2012
jerro
Aug 31, 2012
Iain Buclaw
Aug 31, 2012
Jacob Carlborg
Aug 31, 2012
Iain Buclaw
August 31, 2012
I'm trying to use GDC on OS X 10.7.3. GDC itself builds fine, but when I try to make an executable with it I get an error about __deh_eh_array not being defined. Is that a bug or am I doing something wrong? I don't normally use OS X so it could be something really obvious.
August 31, 2012
On 31 August 2012 03:14, jerro <a@a.com> wrote:
> I'm trying to use GDC on OS X 10.7.3. GDC itself builds fine, but when I try to make an executable with it I get an error about __deh_eh_array not being defined. Is that a bug or am I doing something wrong? I don't normally use OS X so it could be something really obvious.

Probably something that needs to be fixed in porting.  I suspect rt/memory_osx.d is completely wrong.


-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';
August 31, 2012
On 2012-08-31 04:14, jerro wrote:
> I'm trying to use GDC on OS X 10.7.3. GDC itself builds fine, but when I
> try to make an executable with it I get an error about __deh_eh_array
> not being defined. Is that a bug or am I doing something wrong? I don't
> normally use OS X so it could be something really obvious.

__deh_eh_array is defined in rt.deh2, which does not seem to exist in the GDC fork of druntime.

-- 
/Jacob Carlborg
August 31, 2012
On 31 August 2012 14:06, Jacob Carlborg <doob@me.com> wrote:
> On 2012-08-31 04:14, jerro wrote:
>>
>> I'm trying to use GDC on OS X 10.7.3. GDC itself builds fine, but when I try to make an executable with it I get an error about __deh_eh_array not being defined. Is that a bug or am I doing something wrong? I don't normally use OS X so it could be something really obvious.
>
>
> __deh_eh_array is defined in rt.deh2, which does not seem to exist in the GDC fork of druntime.
>

Right, we implement the EH supported by GCC (practically, a D implementation of what's in libstdc++).  I don't think you need to worry about adding it as a gc_Range, so just remove what you need... infact, you may just want to remove it all...


-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';