https://llvm.org/bugs/show_bug.cgi?id=29118

Wu Zhao <bluechristl...@163.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|INVALID                     |---

--- Comment #6 from Wu Zhao <bluechristl...@163.com> ---
Firstly, thanks Sanjay Patel and Michael Kuperstein. 

However, we must see carefully with this C++ code(not only IR). From the user
source code of C++ semantics, I do not think it should be UB. 

[code]
int main()
{
  typedef array<char, 10> Con;
  Con v0;
  __builtin_printf("%d\n", v0 == v0);
}
[/code]

In fact, I compare it with the object v0 self, why the compiler said to me it
is not equal when I use O2? In fact, this case can be compiled with GCC / xlC
and so on (even with O2, O3). Clang passed O0 and Clang 3.5 can pass O2. For
main trunk of Clang, it can pass O0/O1.  So I think it is not invalid test
cases. Additionally, the container of array implementation is from our libc++
and affects us to use libc++. We should resolve it for our libc++ to be used
better experience too.

Thanks.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to