fork(1) download
  1. class Env
  2. { /* whatever */
  3. };
  4.  
  5. class CEnv{
  6. private:
  7. Env m;
  8.  
  9. public:
  10. static Env *Instance()
  11. {
  12. CEnv *pEnv = new CEnv; /* memory leak */
  13. return &pEnv->m;
  14. }
  15. };
  16.  
  17. Env *test()
  18. {
  19. CEnv *p = new CEnv;
  20. return &p->m;
  21. }
  22. class CEnv2{
  23. private:
  24. Env m;
  25. friend Env *::test2();
  26. };
  27.  
  28. Env *test2()
  29. {
  30. CEnv2 *p = new CEnv2;
  31. return &p->m;
  32. }
  33.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp: In function 'Env* test()':
prog.cpp:7:13: error: 'Env CEnv::m' is private
         Env m;
             ^
prog.cpp:20:20: error: within this context
         return &p->m;
                    ^
stdout
Standard output is empty