www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 6262] New: Templates which exist only inside is(typeof()) shouldn't be instantiated

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=6262

           Summary: Templates which exist only inside is(typeof())
                    shouldn't be instantiated
           Product: D
           Version: D1 & D2
          Platform: Other
        OS/Version: Windows
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: nobody puremagic.com
        ReportedBy: clugdbug yahoo.com.au



The code below should compile with no errors.

This is related to the other gagging bugs (bug 4269, bug 5932, bug 4197, bug
5996). I think that every template needs to record whether it is an
investigative template or not. If it is, it shouldn't be considered to be
instantiated.

-----
template Compileable(int z) { bool OK;}

static assert(!is(typeof( Compileable!(Bug6262!(int).bar()) )));

struct Bug6262(T)
{
   int bar() { T.codswallop(); return 3; }
}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jul 07 2011
parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=6262


Don <clugdbug yahoo.com.au> changed:

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



I reported this one twice! Fixed in 2.056.

*** This issue has been marked as a duplicate of issue 6661 ***

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Mar 21 2012