[ https://issues.apache.org/jira/browse/STDCXX-311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12529699 ] Martin Sebor commented on STDCXX-311: ------------------------------------- It's clear that the copy assignment operator must be accessible but there might be some confusion about the semantics of this assignment operator -- see LWG issue 621: http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-active.html#621 > std::mask_array::operator= inaccessible > --------------------------------------- > > Key: STDCXX-311 > URL: https://issues.apache.org/jira/browse/STDCXX-311 > Project: C++ Standard Library > Issue Type: Bug > Components: 26. Numerics > Affects Versions: 4.1.2, 4.1.3 > Environment: All. > Reporter: Martin Sebor > Assignee: Martin Sebor > Fix For: 4.2 > > > The well-formed program below fails to compile because the mask_array copy assignment operator is declared private: > $ cat z.cpp && make z > #include > int main () > { > std::valarray va (10); > std::mask_array ma (va [std::valarray(1)]); > ma = ma; > } > gcc -c -I/build/sebor/dev/stdlib/include/ansi -D_RWSTDDEBUG -D_RWSTD_USE_CONFIG -I/build/sebor/dev/stdlib/include -I/build/sebor/gcc-4.1.0-11s/include -I/build/sebor/dev/stdlib/examples/include -pedantic -nostdinc++ -g -W -Wall -Wcast-qual -Winline -Wshadow -Wwrite-strings -Wno-long-long z.cpp > /build/sebor/dev/stdlib/include/valarray: In function 'int main()': > /build/sebor/dev/stdlib/include/valarray:1079: error: 'std::mask_array<_TypeT>& std::mask_array<_TypeT>::operator=(const std::mask_array<_TypeT>&) [with _TypeT = int]' is private > z.cpp:7: error: within this context > make: *** [z.o] Error 1 -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.