https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80243
--- Comment #6 from Jim Michaels <jmichae3 at yahoo dot com> --- atoi64.cpp:1974:1: error: expected 'while' before 'ATOLDRESULT' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~~~~~~~~ atoi64.cpp:1974:1: error: expected '(' before 'ATOLDRESULT' atoi64.cpp:1974:13: error: expected primary-expression before 'atold_' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~~~ atoi64.cpp:1974:13: error: expected ')' before 'atold_' atoi64.cpp:1974:13: error: expected ';' before 'atold_' atoi64.cpp:1974:22: error: expected primary-expression before 'str' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~ atoi64.cpp:1974:26: error: expected primary-expression before 'bool' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~ atoi64.cpp:1974:54: error: expected primary-expression before 'bool' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~ atoi64.cpp:1974:83: error: expected primary-expression before 'groupChar' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~~~~~~ atoi64.cpp:1974:100: error: expected primary-expression before 'dimensionArr' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~~~~~~~~~ atoi64.cpp:1974:118: error: expected primary-expression before 'bool' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~ atoi64.cpp:1974:153: error: expected primary-expression before 'pos' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~ atoi64.cpp:1974:159: error: expected primary-expression before 'bool' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~ atoi64.cpp:1974:178: error: expected primary-expression before 'bool' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~ atoi64.cpp:1974:208: error: expected primary-expression before 'charset' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~~~~ atoi64.cpp:1974:235: error: expected primary-expression before 'bool' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~ atoi64.cpp:1974:260: error: expected primary-expression before 'charsetPrefix' ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^~~~~~~~~~~~~ atoi64.cpp:1974:278: error: 'atold_' was not declared in this scope ATOLDRESULT atold_(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { ^ atoi64.cpp:3155:281: error: a function-definition is not allowed here before '{' token ATOI64RESULT atoi64(S str,bool oldCOctalEnabled=false,bool groupCharEnabled=true,C groupChar=',',VS dimensionArr={""},bool skipNonScientific=true,size_t pos=0,bool doMoney=false,bool icaseDimensionArr=true,S charset="0123456789abcdef",bool icaseCharset=true,S charsetPrefix="0d") { //returns Array(result,status,intstartpos,intendpos); status:true=success false=failure ^ atoi64.cpp:5542:1: error: expected '}' at end of input } ^ there's a whole lot more useless bug reports from gcc I could paste not related to this bug. ATOLDRESULT is a struct which is the return type. gcc throws errors at returning an initializer list through it.