From my last edit, I managed to fix the two errors plaguing my program, but this error appeared and seems to persist.
error: operator<<(std::__1::basic_ostream<char, std::__1::char_traits >&, Poly const&)", referenced from: _main in MYPROGRAM-20b615.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation).
I have found the line in my code that is causing my program which is
friend ostream &operator<<(ostream &Out, const Poly &);
I don't know how to address it though.