Thread overview
Anyone using dmd head?
Aug 09, 2013
Iain Buclaw
Aug 09, 2013
Ali Çehreli
Aug 10, 2013
Iain Buclaw
Aug 10, 2013
H. S. Teoh
Aug 10, 2013
Iain Buclaw
Aug 10, 2013
Andrej Mitrovic
Aug 10, 2013
Iain Buclaw
August 09, 2013
Just wanted to check with someone if this is working before I raise a bug report. :-)

A.d:
---
module A;
import B;
enum MyEnum F = E;
---

B.d:
---
module B;
import A;
enum : uint { E }  // Fails
//enum { E }         // OK
alias uint MyEnum;
---


Run: dmd -c B.d



Thanks,
Iain.
August 09, 2013
On 08/09/2013 11:16 AM, Iain Buclaw wrote:
> Just wanted to check with someone if this is working before I raise a
> bug report. :-)
>
> A.d:
> ---
> module A;
> import B;
> enum MyEnum F = E;
> ---
>
> B.d:
> ---
> module B;
> import A;
> enum : uint { E }  // Fails
> //enum { E }         // OK
> alias uint MyEnum;
> ---
>
>
> Run: dmd -c B.d
>
>
>
> Thanks,
> Iain.

DMD64 D Compiler v2.064-devel-52cc287 behaves the same:

  A.d(3): Error: forward reference of enum member E

Ali

August 10, 2013
On Fri, Aug 09, 2013 at 08:16:32PM +0200, Iain Buclaw wrote:
> Just wanted to check with someone if this is working before I raise a bug report. :-)
> 
> A.d:
> ---
> module A;
> import B;
> enum MyEnum F = E;
> ---
> 
> B.d:
> ---
> module B;
> import A;
> enum : uint { E }  // Fails
> //enum { E }         // OK
> alias uint MyEnum;
> ---
> 
> 
> Run: dmd -c B.d
[...]

I'm using git HEAD. I get:

A.d(3): Error: forward reference of enum member E


T

-- 
MAS = Mana Ada Sistem?
August 10, 2013
On 9 August 2013 19:22, H. S. Teoh <hsteoh@quickfur.ath.cx> wrote:
> On Fri, Aug 09, 2013 at 08:16:32PM +0200, Iain Buclaw wrote:
>> Just wanted to check with someone if this is working before I raise a bug report. :-)
>>
>> A.d:
>> ---
>> module A;
>> import B;
>> enum MyEnum F = E;
>> ---
>>
>> B.d:
>> ---
>> module B;
>> import A;
>> enum : uint { E }  // Fails
>> //enum { E }         // OK
>> alias uint MyEnum;
>> ---
>>
>>
>> Run: dmd -c B.d
> [...]
>
> I'm using git HEAD. I get:
>
> A.d(3): Error: forward reference of enum member E
>
>

Excellent, this is a regression from around 11 months ago was the last time this sort of code worked. :o)

-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';
August 10, 2013
On 8/9/13, Iain Buclaw <ibuclaw@ubuntu.com> wrote:
> Excellent, this is a regression from around 11 months ago was the last time this sort of code worked. :o)

I can't get any compiler version to work with this code. Tried 2.050 all the way up to git-head.
August 10, 2013
On 9 August 2013 22:53, Ali Çehreli <acehreli@yahoo.com> wrote:
>
> DMD64 D Compiler v2.064-devel-52cc287 behaves the same:
>
>
>   A.d(3): Error: forward reference of enum member E
>
> Ali
>

Yeah, I'd expect it to be a front-end implementation problem, so doesn't matter what target.

-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';
August 10, 2013
On 9 August 2013 22:13, Andrej Mitrovic <andrej.mitrovich@gmail.com> wrote:
> On 8/9/13, Iain Buclaw <ibuclaw@ubuntu.com> wrote:
>> Excellent, this is a regression from around 11 months ago was the last time this sort of code worked. :o)
>
> I can't get any compiler version to work with this code. Tried 2.050 all the way up to git-head.

Hmm... the test was reduced from a much larger project, so it could be possible that there was some addition in that code that made it compile OK in the past, but the minimal test still failed...

-- 
Iain Buclaw

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