diff options
| author | Richard Smith <richard-llvm@metafoo.co.uk> | 2012-02-18 22:04:06 +0000 |
|---|---|---|
| committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2012-02-18 22:04:06 +0000 |
| commit | 66c9699ac3cdd4459e8f2442813ec2645bc4396a (patch) | |
| tree | ffe51b71de29ccc76df3b33a7a54ebc447ebf747 /llvm/lib/Support/Hashing.cpp | |
| parent | b0d37508d0b23097c0ef7b2ca30c26b4f1ffc46e (diff) | |
| download | bcm5719-llvm-66c9699ac3cdd4459e8f2442813ec2645bc4396a.tar.gz bcm5719-llvm-66c9699ac3cdd4459e8f2442813ec2645bc4396a.zip | |
Implement constant expression support for __real__ and __imag__ on lvalue
complex numbers. Treat complex numbers as arrays of the corresponding component
type, in order to make std::complex behave properly if implemented in terms of
_Complex T.
Apparently libstdc++'s std::complex is implemented this way, and we were
rejecting a member like this:
constexpr double real() { return __real__ val; }
because it was marked constexpr but unable to produce a constant expression.
llvm-svn: 150895
Diffstat (limited to 'llvm/lib/Support/Hashing.cpp')
0 files changed, 0 insertions, 0 deletions

