[LLVMbugs] [Bug 7138] New: clang incorrectly double-instantiates friend of template class

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri May 14 01:51:26 PDT 2010


           Summary: clang incorrectly double-instantiates friend of
                    template class
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: chris at bubblescope.net
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com

Created an attachment (id=4890)
 --> (http://llvm.org/bugs/attachment.cgi?id=4890)
Friend example

The attached code is reduced from a boost test which should fail, but passes in

This technique is used to stop inconsistencies in boost::units, so the
compile-invalid can lead to invalid code (from the library point of view) being

Problematic code:

template<class > struct base_dimension
  friend int boost_units_is_registered( )

struct int1 : base_dimension<int>
struct dim2 : base_dimension<dim2>

Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

More information about the llvm-bugs mailing list