MantisBT - GCC-XML | |||||
| View Issue Details | |||||
| ID | Project | Category | View Status | Date Submitted | Last Update |
| 0010367 | GCC-XML | public | 2010-03-04 09:43 | 2015-03-26 11:59 | |
| Reporter | axel | ||||
| Assigned To | Brad King | ||||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | resolved | Resolution | suspended | ||
| Platform | OS | OS Version | |||
| Summary | 0010367: templated c'tor gets instantiated as copy c'tor | ||||
| Description | According to 12.8.3 ("A member function template is never instantiated to perform the copy of a class object to an object of its class type"), the following code should not instantiate the templated constructor as a copy constructor. It should not be visible in GCCXML's output, just like h() is not visible. With a recent GCCXML snapshot I see <Constructor id="_161" name="S" context="_137" access="public" mangled="_ZN1SC1IS_EET_ *INTERNAL* " demangled="S::S<S>(S)" location="f1:3" file="f1" line="3" extern="1"> Is that difficult to fix? struct S { template <typename T> S(T); template <typename T> void h(T); }; S f(); void g() { S a( f() ); // does not instantiate member template } | ||||
| Steps To Reproduce | |||||
| Additional Information | |||||
| Tags | No tags attached. | ||||
| Relationships | |||||
| Attached Files | |||||
| Issue History | |||||
| Date Modified | Username | Field | Change | ||
| 2010-03-04 09:43 | axel | New Issue | |||
| 2010-03-04 11:34 | Brad King | Status | new => assigned | ||
| 2010-03-04 11:34 | Brad King | Assigned To | => Brad King | ||
| 2010-03-04 11:36 | Brad King | Note Added: 0019708 | |||
| 2010-03-05 04:24 | axel | Note Added: 0019723 | |||
| 2010-03-05 08:10 | Brad King | Note Added: 0019726 | |||
| 2015-03-26 11:59 | Brad King | Note Added: 0038327 | |||
| 2015-03-26 11:59 | Brad King | Status | assigned => resolved | ||
| 2015-03-26 11:59 | Brad King | Resolution | open => suspended | ||
| Notes | |||||
|
|
|||||
|
|
||||
|
|
|||||
|
|
||||
|
|
|||||
|
|
||||
|
|
|||||
|
|
||||