Language: C++

#include <bits/stdc++.h>
#define rep(i,n) for(int i=0;(i)<(n);++(i))
using namespace std;

// Description: ????????????
// Verifyed: various problem 
using namespace placeholders;
using R=long double;
const R EPS=1e-9L; // [-1000,1000]->EPS=1e-8 [-10000,10000]->EPS=1e-7
inline int sgn(const R& r){return(r > EPS)-(r < -EPS);}
inline R sq(R x){return sqrt(max(x,0.0L));}

const R INF = 1E40L;
const R PI = acos(-1.0L);
using P=complex<R>;
using L=struct{P s,t;};
using VP=vector<P>;
using C=struct{P c;R r;};

auto& operator >> (istream& is,P& p){ R x,y; is >> x >> y,p=P(x,y); return is;}
auto& operator << (ostream& os,P& p){ os << real(p) << " " << imag(p); return os;}

inline R dot(P o,P a,P b){return real(conj(a-o)*(b-o));}
inline R det(P o,P a,P b){return imag(conj(a-o)*(b-o));}
inline P vec(L l){return l.t-l.s;}
auto sdot = bind(sgn,bind(dot,_1,_2,_3));
auto sdet = bind(sgn,bind(det,_1,_2,_3));

//projection verify AOJ CGL_1_A
P proj(L l,P p){ R u=real((p-l.s)/vec(l)); return (1-u)*l.s+u*l.t;}

// Polygon
#define at(a,i) (a[(i + a.size()) % a.size()])

// area 
// verified: AOJ 1100 CGL_3_A
R area(const VP& pol){
	R sum=0.0;
	rep(i,pol.size()) sum+=det(0,at(pol,i),at(pol,i+1));
	return abs(sum/2.0L);
}

// convex_polygon determination
// verified: CGL_3_B
bool is_convex(const VP& pol){
	rep(i,pol.size())if(sdet(at(pol,i),at(pol,i+1),at(pol,i+2))<0) return false;
	return true;
}

// polygon realation determination  in  2 on 1 out 0???(possible non-convex) 
// verified: AOJ CGL_3-C
int in_polygon(const VP& pol, const P& p){
	int res=0;
	auto simag = bind(sgn,bind(imag,_1));
	rep(i,pol.size()){
		P a=at(pol,i),b=at(pol,i+1);
		if(sdet(p,a,b)==0 and sdot(p,a,b)<=0) return 1;
		bool f=simag(p-a)>=0,s=simag(p-b)<0;
		if(simag(b-a)*sdet(a,b,p)==1 and f==s) res+=(2*f-1);
	}
	return res?2:0;
}

// polygon realation determination???(possible non-convex) 
// verified: not AOJ 2514
bool in_polygon(const VP& pol, const L& l){
	VP check={l.s,l.t};
	rep(i,pol.size()){
		L edge={at(pol,i),at(pol,i+1)};
		if(iss(l,edge)) check.emplace_back(cross(l,edge));
	}

	auto cmp_x=[](P a,P b)->bool
		int sr = sgn(real(a-b)), si = sgn(imag(a-b));
		return sr ? sr < 0 :si < 0;
	};
	
	sort(begin(check),end(check),cmp_x);
	rep(i,check.size()-1){
		P m=(at(check,i)+at(check,i+1]))/2.0L;
		if(in_polygon(pol,m)==false) return false;
	}
	return true;
}

// convex_cut 
// verified: AOJ CGL_4_C
VP convex_cut(const VP& pol,const L& l) {
	VP res;
	rep(i,pol.size()){
		P a = at(pol,i),b=at(pol,i+1);
		int da=sdet(l.s,l.t,a),db=sdet(l.s,l.t,b);
		if(da>=0) res.emplace_back(a);
		if(da*db<0) res.emplace_back(cross({a,b},l));
	}
	return res;
}

int main(void){
	int n;
	cin >> n;
	cout.precision(1);
	VP pol;
	rep(i,n){
		P p;
		cin >> p;
		pol.push_back(p); 
	}
	cout << fixed << area(pol) << endl;
	return 0;
}

Compiler output:
a.cc: In function 'int in_polygon(const VP&, const P&)':
a.cc:54:35: error: no matching function for call to 'bind(<unresolved overloaded function type>, const std::_Placeholder<1>&)'
   54 |         auto simag = bind(sgn,bind(imag,_1));
      |                               ~~~~^~~~~~~~~
In file included from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:53,
                 from a.cc:1:
/usr/include/c++/14/functional:888:5: note: candidate: 'template<class _Func, class ... _BoundArgs> typename std::_Bind_helper<std::__is_socketlike<_Func>::value, _Func, _BoundArgs ...>::type std::bind(_Func&&, _BoundArgs&& ...)'
  888 |     bind(_Func&& __f, _BoundArgs&&... __args)
      |     ^~~~
/usr/include/c++/14/functional:888:5: note:   template argument deduction/substitution failed:
a.cc:54:35: note:   couldn't deduce template parameter '_Func'
   54 |         auto simag = bind(sgn,bind(imag,_1));
      |                               ~~~~^~~~~~~~~
/usr/include/c++/14/functional:913:5: note: candidate: 'template<class _Result, class _Func, class ... _BoundArgs> typename std::_Bindres_helper<_Result, _Func, _BoundArgs>::type std::bind(_Func&&, _BoundArgs&& ...)'
  913 |     bind(_Func&& __f, _BoundArgs&&... __args)
      |     ^~~~
/usr/include/c++/14/functional:913:5: note:   template argument deduction/substitution failed:
a.cc:54:35: note:   couldn't deduce template parameter '_Result'
   54 |         auto simag = bind(sgn,bind(imag,_1));
      |                               ~~~~^~~~~~~~~
a.cc:59:53: error: 's' was not declared in this scope
   59 |                 if(simag(b-a)*sdet(a,b,p)==1 and f==s) res+=(2*f-1);
      |                                                     ^
a.cc: In function 'bool in_polygon(const VP&, const L&)':
a.cc:70:20: error: 'iss' was not declared in this scope
   70 |                 if(iss(l,edge)) check.emplace_back(cross(l,edge));
      |                    ^~~
a.cc:70:52: error: 'cross' was not declared in this scope
   70 |                 if(iss(l,edge)) check.emplace_back(cross(l,edge));
      |                                                    ^~~~~
a.cc:73:33: error: two or more data types in declaration of 'type name'
   73 |         auto cmp_x=[](P a,P b)->bool
      |                                 ^~~~
a.cc:74:21: error: expected '{' before 'sr'
   74 |                 int sr = sgn(real(a-b)), si = sgn(imag(a-b));
      |                     ^~
a.cc:75:24: error: 'sr' was not declared in this scope; did you mean 'sq'?
   75 |                 return sr ? sr < 0 :si < 0;
      |                        ^~
      |                        sq
a.cc:75:37: error: 'si' was not declared in this scope; did you mean 'sq'?
   75 |                 return sr ? sr < 0 :si < 0;
      |                                     ^~
      |                                     sq
a.cc: At global scope:
a.cc:78:13: error: expected constructor, destructor, or type conversion before '(' token
   78 |         sort(begin(check),end(check),cmp_x);
      |             ^
a.cc:2:18: error: expected unqualified-id before 'for'
    2 | #define rep(i,n) for(int i=0;(i)<(n);++(i))
      |                  ^~~
a.cc:79:9: note: in expansion of macro 'rep'
   79 |         rep(i,check.size()-1){
      |         ^~~
a.cc:2:33: error: expected constructor, destructor, or type conversion before '<' token
    2 | #define rep(i,n) for(int i=0;(i)<(n);++(i))
      |                                 ^
a.cc:79:9: note: in expansion of macro 'rep'
   79 |         rep(i,check.size()-1){
      |         ^~~
a.cc:2:38: error: expected unqualified-id before '++' token
    2 | #define rep(i,n) for(int i=0;(i)<(n);++(i))
      |                                      ^~
a.cc:79:9: note: in expansion of macro 'rep'
   79 |         rep(i,check.size()-1){
      |         ^~~
a.cc:83:9: error: expected unqualified-id before 'return'
   83 |         return true;
      |         ^~~~~~
a.cc:84:1: error: expected declaration before '}' token
   84 | }
      | ^
a.cc: In function 'VP convex_cut(const VP&, const L&)':
a.cc:94:46: error: 'cross' was not declared in this scope
   94 |                 if(da*db<0) res.emplace_back(cross({a,b},l));
      |                                              ^~~~~