Wandbox
SettingsLog
SettingsLog
Language
GitHubLogin
Ran/Viewed Log

Author

anonymous

7 months ago

Language

C++

Compiler

clang HEAD 20.0.0git (https://github.com/llvm/llvm-project.git cd12ffb622df5392020d0793e3fff7c3bf8385a2)

Options
Warnings
Optimization
Don't Use Boost
C++2b
no pedantic

Author

anonymous

7 months ago

$ clang++ prog.cc -Wall -Wextra -O2 -march=native -std=c++2b
prog.cc:92:23: error: static assertion failed due to requirement 'std::is_same_v<NullPointer, InitializedPointer>'
   92 |         static_assert(std::is_same_v<current, InitializedPointer>);
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
prog.cc:130:5: note: in instantiation of function template specialization 'safe_pointer<int>::operator*<safe_pointer<int>::(lambda at prog.cc:89:32){}>' requested here
  130 |     *p1 = 53; // Don't compile
      |     ^
prog.cc:92:23: error: static assertion failed due to requirement 'std::is_same_v<NullPointer, InitializedPointer>'
   92 |         static_assert(std::is_same_v<current, InitializedPointer>);
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
prog.cc:135:5: note: in instantiation of function template specialization 'safe_pointer<int>::operator*<safe_pointer<int>::(lambda at prog.cc:89:32){}>' requested here
  135 |     *p2 = 20; // don't compile
      |     ^
prog.cc:92:23: error: static assertion failed due to requirement 'std::is_same_v<NullPointer, InitializedPointer>'
   92 |         static_assert(std::is_same_v<current, InitializedPointer>);
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
prog.cc:136:5: note: in instantiation of function template specialization 'safe_pointer<int>::operator*<safe_pointer<int>::(lambda at prog.cc:89:32){}>' requested here
  136 |     *p3 = 43; // don't compile
      |     ^
3 errors generated.
Exit Code:
1