www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 17143] New: [REG2.072.0] Declaration is already defined on

https://issues.dlang.org/show_bug.cgi?id=17143

          Issue ID: 17143
           Summary: [REG2.072.0]  Declaration is already defined on global
                    enum = tuple(...).expand declaration
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Keywords: CTFE, rejects-valid
          Severity: regression
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: epi atari8.info

// The following code compiled successfully up to 2.071.2:

import std.typecons : tuple;
enum foo = tuple(1, 2).expand;
pragma(msg, typeof(foo).stringof);
pragma(msg, foo.stringof);

// Result up to 2.071.2:
// (int, int)
// tuple(1, 2)

// From 2.072.0 on:
// tup.d(2): Error: declaration tup.__tup1846 is already defined
// tup.d(3):        while evaluating pragma(msg, (_error_).stringof)
// tup.d(4):        while evaluating pragma(msg, foo.stringof)

--
Feb 04 2017