[LLVMbugs] [Bug 18240] New: С++11 standard compliance parts 12.3.2.2 and 8.5.15
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Fri Dec 13 06:44:18 PST 2013
http://llvm.org/bugs/show_bug.cgi?id=18240
Bug ID: 18240
Summary: С++11 standard compliance parts 12.3.2.2 and 8.5.15
Product: new-bugs
Version: 3.3
Hardware: PC
OS: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: msnkipa at mail.ru
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
For the code
struct A
{
explicit operator bool() { return true; }
};
int main()
{
A a;
bool b { a }; // BUG or Error here??
}
I have error:
error: no viable conversion from 'A' to 'bool'
but part 12.3.2.2 of the C++11 standard states that "explicit operator bool()"
will be (and must be) used in the direct initialization, and according to the
part 8.5.15 of the C++11 standard "bool b{a}" is a direct initialization of the
b. So is it a bug or I miss something?
GCC 4.8.2 accept such code without error.
I use clang++ under Mac OS X (clang++ --version says: Apple LLVM version 5.0
(clang-500.2.79) (based on LLVM 3.3svn))
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20131213/450070b4/attachment.html>
More information about the llvm-bugs
mailing list