Language: C++

#include<iostream>
#include<vector>
#include<tr1/unordered_map>
#include<queue> 
#include<list> 
#include<cmath>
#include<algorithm>
#include<string> 
#include<time.h>
using namespace std;
using namespace std::tr1;

bool noOdd(int a, int b, int c){
	if((a&1) || (b&1) || (c&1))	return false;
	return true;
}

bool equal(int a, int b, int, c){
	return a==b && b==c;
}
int main(){
	int a,b,c;
	cin >> a >> b >> c;
	int res = 0;
	while(noOdd(a,b,c) && equal(a, b, c)){
		int a1 = a/2;
		int b1 = b/2;
		int c1 = c/2;
		a = b1+c1;
		b = a1+c1;
		c = a1+b1;
		res++;
	} 
	if(!noOdd(a, b, c) && equal(a, b, c))	res = -1;
	cout << res <<endl;
	return 0;
} 

Compiler output:
a.cc:18:31: error: 'c' has not been declared
   18 | bool equal(int a, int b, int, c){
      |                               ^
a.cc: In function 'bool equal(int, int, int, int)':
a.cc:19:27: error: 'c' was not declared in this scope
   19 |         return a==b && b==c;
      |                           ^
In file included from /usr/include/c++/14/string:51,
                 from /usr/include/c++/14/bits/locale_classes.h:40,
                 from /usr/include/c++/14/bits/ios_base.h:41,
                 from /usr/include/c++/14/ios:44,
                 from /usr/include/c++/14/ostream:40,
                 from /usr/include/c++/14/iostream:41,
                 from a.cc:1:
/usr/include/c++/14/bits/stl_algobase.h: In instantiation of 'bool std::__equal_aux1(_II1, _II1, _II2) [with _II1 = int; _II2 = int]':
/usr/include/c++/14/bits/stl_algobase.h:1253:31:   required from 'bool std::__equal_aux(_II1, _II1, _II2) [with _II1 = int; _II2 = int]'
 1253 |       return std::__equal_aux1(std::__niter_base(__first1),
      |              ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1254 |                                std::__niter_base(__last1),
      |                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1255 |                                std::__niter_base(__first2));
      |                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_algobase.h:1592:30:   required from 'bool std::equal(_II1, _II1, _II2) [with _II1 = int; _II2 = int]'
 1592 |       return std::__equal_aux(__first1, __last1, __first2);
      |              ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
a.cc:25:29:   required from here
   25 |         while(noOdd(a,b,c) && equal(a, b, c)){
      |                               ~~~~~^~~~~~~~~
/usr/include/c++/14/bits/stl_algobase.h:1241:58: error: no type named 'value_type' in 'struct std::iterator_traits<int>'
 1241 |       typedef typename iterator_traits<_II1>::value_type _ValueType1;
      |                                                          ^~~~~~~~~~~
/usr/include/c++/14/bits/stl_algobase.h:1242:58: error: no type named 'value_type' in 'struct std::iterator_traits<int>'
 1242 |       const bool __simple = ((__is_integer<_ValueType1>::__value
      |                                                          ^~~~~~~
/usr/include/c++/14/bits/stl_algobase.h:1243:61: error: no type named 'value_type' in 'struct std::iterator_traits<int>'
 1243 |                               || __is_pointer<_ValueType1>::__value)
      |                                                             ^~~~~~~