Language: C++

#include<iostream>
#include<vector>
#include<string>
#include<map>
#include<stack>
#include<array>
using namespace std;

#define FOR(k,m,n) for(int (k)=(m);(k)<(n);(k)++)
#define rep(i,n) FOR((i),0,(n))

typedef long long ll;
map<string,array<int,256> >data;
const int INF=1e9+7;
int main(){
	int m;
	bool f=true;
	cin>>m;
	rep(i,m){
		string str;
		cin>>str;
		int l,u;
		cin>>l>>u;
		FOR(i,l,u+1){
			data[str][i]=1;
		}
	}
	int n;
	cin>>n;
	stack<array<int,256> > st;
	rep(l,n){
		string str;
		cin>>str;
		if(str=="0" || atoi(str.c_str())>0){
			int num=atoi(str.c_str());
			array<int,256>num_a;
			rep(i,256)num_a[i]=0;
			num_a[num]=1;
			st.push(num_a);
		}
		else if(str=="+"){
			array<int,256> ne,l,r;
			fill(ne.begin(),ne.end(),0);
			r=st.top();st.pop();
			l=st.top();st.pop();
			rep(i,256){
				rep(j,256){
					ne[(i+j)%256]|=(r[i]&l[j]);
				}
			}
			st.push(ne);
		}
		else if(str=="-"){
			array<int,256> ne,l,r;
			fill(ne.begin(),ne.end(),0);
			r=st.top();st.pop();
			l=st.top();st.pop();
			rep(i,256){
				rep(j,256){
					ne[(i-j+256)%256]|=(r[i]&l[j]);
				}
			}
			st.push(ne);
		}
		else if(str=="*"){
			array<int,256> ne,l,r;
			fill(ne.begin(),ne.end(),0);
			r=st.top();st.pop();
			l=st.top();st.pop();
			rep(i,256)rep(j,256)ne[(i*j)%256]|=(r[i]&l[j]);
			st.push(ne);
		}
		else if(str=="/"){
			array<int,256> ne,l,r;
			fill(ne.begin(),ne.end(),0);
			r=st.top();st.pop();
			l=st.top();st.pop();
			if(r[0]==1)f=false;
			rep(i,256)FOR(j,1,256)ne[(i/j)%256]|=(r[i]&l[j]);
			st.push(ne);
		}
		else {
			st.push(data[str]);
		}
	}
	if(f)cout<<"correct"<<endl;
	else cout<<"error"<<endl;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:25:25: error: reference to 'data' is ambiguous
   25 |                         data[str][i]=1;
      |                         ^~~~
In file included from /usr/include/c++/14/string:53,
                 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/range_access.h:344:5: note: candidates are: 'template<class _Tp> constexpr const _Tp* std::data(initializer_list<_Tp>)'
  344 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:334:5: note:                 'template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::data(_Tp (&)[_Nm])'
  334 |     data(_Tp (&__array)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:323:5: note:                 'template<class _Container> constexpr decltype (__cont.data()) std::data(const _Container&)'
  323 |     data(const _Container& __cont) noexcept(noexcept(__cont.data()))
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:312:5: note:                 'template<class _Container> constexpr decltype (__cont.data()) std::data(_Container&)'
  312 |     data(_Container& __cont) noexcept(noexcept(__cont.data()))
      |     ^~~~
a.cc:13:28: note:                 'std::map<std::__cxx11::basic_string<char>, std::array<int, 256> > data'
   13 | map<string,array<int,256> >data;
      |                            ^~~~
a.cc:83:33: error: reference to 'data' is ambiguous
   83 |                         st.push(data[str]);
      |                                 ^~~~
/usr/include/c++/14/bits/range_access.h:344:5: note: candidates are: 'template<class _Tp> constexpr const _Tp* std::data(initializer_list<_Tp>)'
  344 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:334:5: note:                 'template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::data(_Tp (&)[_Nm])'
  334 |     data(_Tp (&__array)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:323:5: note:                 'template<class _Container> constexpr decltype (__cont.data()) std::data(const _Container&)'
  323 |     data(const _Container& __cont) noexcept(noexcept(__cont.data()))
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:312:5: note:                 'template<class _Container> constexpr decltype (__cont.data()) std::data(_Container&)'
  312 |     data(_Container& __cont) noexcept(noexcept(__cont.data()))
      |     ^~~~
a.cc:13:28: note:                 'std::map<std::__cxx11::basic_string<char>, std::array<int, 256> > data'
   13 | map<string,array<int,256> >data;
      |                            ^~~~