// with support of overloaded functions, during parsing, // we can't determine whether they match exactly, however // it will throw DeclarationError in following stage. contract test { function fun(uint a) returns(uint r) { return a; } function fun(uint a) returns(uint r) { return a; } } // ---- // DeclarationError: (189-239): Function with same name and arguments defined twice.