/usr/bin/ld: /tmp/cc4hRrdX.o: in function `helper::read_int()':
grader.cpp:(.text+0x860): multiple definition of `helper::read_int()'; /tmp/cclJnApW.o:messy.cpp:(.text+0x920): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o: in function `get_p(int)':
grader.cpp:(.text+0x8b0): multiple definition of `get_p(int)'; /tmp/cclJnApW.o:messy.cpp:(.text+0x970): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o:(.bss+0x10): multiple definition of `helper::p'; /tmp/cclJnApW.o:(.bss+0x30): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o: in function `wa()':
grader.cpp:(.text+0x8d0): multiple definition of `wa()'; /tmp/cclJnApW.o:messy.cpp:(.text+0x990): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o: in function `check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
grader.cpp:(.text+0x900): multiple definition of `check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'; /tmp/cclJnApW.o:messy.cpp:(.text+0x9c0): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o:(.bss+0x28): multiple definition of `helper::n'; /tmp/cclJnApW.o:(.bss+0x48): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o: in function `check_element(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
grader.cpp:(.text+0x950): multiple definition of `check_element(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)'; /tmp/cclJnApW.o:messy.cpp:(.text+0xa10): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o:(.bss+0x0): multiple definition of `helper::r'; /tmp/cclJnApW.o:(.bss+0x24): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o:(.bss+0x2c): multiple definition of `helper::compiled'; /tmp/cclJnApW.o:(.bss+0x4c): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o:(.bss+0x40): multiple definition of `helper::set_[abi:cxx11]'; /tmp/cclJnApW.o:(.bss+0x60): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o: in function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/cclJnApW.o:messy.cpp:(.text.startup+0x0): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o:(.bss+0x4): multiple definition of `helper::w'; /tmp/cclJnApW.o:(.bss+0x28): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o: in function `add_element(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
grader.cpp:(.text+0xad0): multiple definition of `add_element(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)'; /tmp/cclJnApW.o:messy.cpp:(.text+0xb90): first defined here
/usr/bin/ld: /tmp/cc4hRrdX.o: in function `compile_set()':
grader.cpp:(.text+0xb30): multiple definition of `compile_set()'; /tmp/cclJnApW.o:messy.cpp:(.text+0xd60): first defined here
collect2: error: ld returned 1 exit status