Bug 51122
| Summary: | Assigning 0 to a RefPtr<> confuses Visual Studio 2010 | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Jean-Luc Brouillet <jeanluc> |
| Component: | WebKit Misc. | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | Normal | CC: | andersca, darin, joepeck, mjs, sfalken, sroussey |
| Priority: | P2 | ||
| Version: | 528+ (Nightly build) | ||
| Hardware: | PC | ||
| OS: | Windows Vista | ||
Jean-Luc Brouillet
When faced with:
RefPtr<Node> node;
node = 0;
the VS2010 compiler can't tell whether to cast the integral 0 to nullptr_t or to T*, e.g. to use either
RefPtr& operator=(T*);
RefPtr& operator=(std::nullptr_t) { clear(); return *this; }
If we intend WebKit to track C++ 0x, changing the assignments to use nullptr would be forward thinking. If not, #ifdef out "operator=(std::nullptr_t)" might be a solution, but I have not looked closely at the code to see the implications.
Note that VS2010 does not currently support __has_feature().
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Darin Adler
*** This bug has been marked as a duplicate of bug 51116 ***