How to proceed with ICE?

"Øivind" oivind.loe at gmail.com
Sun Mar 24 10:53:52 PDT 2013


On Sunday, 24 March 2013 at 16:01:14 UTC, Øivind wrote:
> After moving to 2.062, I get the following ICE:
>
> src/boss/core/addr.d(23): Error: Internal Compiler Error: CTFE 
> literal cast(uint)PROC_INVALID
> dmd: ctfeexpr.c:353: Expression* copyLiteral(Expression*): 
> Assertion `0' failed.
> Aborted (core dumped)
>
> The line it fails on is here, but I have not managed to get a 
> reduced testcase to fail yet..
>
> struct Addr {
>   alias uint tProcId;
>   alias uint tNodeId;
>
>   const PROC_INVALID    = 0;
>   const NODE_SELF       = 0;
>
>   tProcId m_procId = PROC_INVALID;  // << This is the line
>   tNodeId m_nodeId = NODE_SELF;
>
>
>  ....
> }

Also inside the struct is the following constructor.. Commenting 
it out removes the ICE:

this(tProcId procId, tNodeId nodeId) {
     m_procId = procId;
     m_nodeId = nodeId;
   }


More information about the Digitalmars-d mailing list