g++ -DHAVE_CONFIG_H -I. -I./gdtoa -DHAVE_EXPAT=1 -g -O2 -MT libledger_la-binary.lo -MD -MP -MF .deps/libledger_la-binary.Tpo -c binary.cc -fPIC -DPIC -o .libs/libledger_la-binary.o binary.h: In function 'void ledger::read_binary_number(std::istream&, T&)': binary.h:64: error: there are no arguments to 'assert' that depend on a template parameter, so a declaration of 'assert' must be available binary.h:64: error: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated) binary.h:66: error: there are no arguments to 'assert' that depend on a template parameter, so a declaration of 'assert' must be available binary.h: In function 'void ledger::read_binary_number(char*&, T&)': binary.h:71: error: there are no arguments to 'assert' that depend on a template parameter, so a declaration of 'assert' must be available binary.h:74: error: there are no arguments to 'assert' that depend on a template parameter, so a declaration of 'assert' must be available binary.h: In function 'void ledger::read_binary_long(std::istream&, T&)': binary.h:109: error: there are no arguments to 'assert' that depend on a template parameter, so a declaration of 'assert' must be available binary.h:132: error: there are no arguments to 'assert' that depend on a template parameter, so a declaration of 'assert' must be available binary.h: In function 'void ledger::read_binary_long(char*&, T&)': binary.h:138: error: there are no arguments to 'assert' that depend on a template parameter, so a declaration of 'assert' must be available binary.h:161: error: there are no arguments to 'assert' that depend on a template parameter, so a declaration of 'assert' must be available binary.cc: In function 'void ledger::read_binary_bool(std::istream&, bool&)': binary.cc:36: error: 'assert' was not declared in this scope binary.cc:40: error: 'assert' was not declared in this scope binary.cc: In function 'void ledger::read_binary_bool(char*&, bool&)': binary.cc:45: error: 'assert' was not declared in this scope binary.cc:49: error: 'assert' was not declared in this scope binary.cc: In function 'void ledger::read_binary_string(std::istream&, ledger::string&)': binary.cc:54: error: 'assert' was not declared in this scope binary.cc:76: error: 'assert' was not declared in this scope binary.cc: In function 'void ledger::read_binary_string(char*&, ledger::string&)': binary.cc:81: error: 'assert' was not declared in this scope binary.cc:99: error: 'assert' was not declared in this scope binary.cc: In function 'void ledger::read_binary_string(char*&, ledger::string*)': binary.cc:104: error: 'assert' was not declared in this scope binary.cc:122: error: 'assert' was not declared in this scope binary.cc: In function 'void ledger::write_binary_string(std::ostream&, const ledger::string&)': binary.cc:638: error: 'assert' was not declared in this scope make[1]: *** [libledger_la-binary.lo] Error 1