naan.cpp: In function 'Fraction operator+(const Fraction&, const Fraction&)':
naan.cpp:32:34: warning: narrowing conversion of '((((__int128)left.Fraction::p) * ((__int128)right.Fraction::q)) + (((__int128)right.Fraction::p) * ((__int128)left.Fraction::q)))' from '__int128' to 'llong' {aka 'long long int'} [-Wnarrowing]
32 | return {left.p * right.q + right.p * left.q, left.q * right.q};
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
naan.cpp:32:61: warning: narrowing conversion of '(((__int128)left.Fraction::q) * ((__int128)right.Fraction::q))' from '__int128' to 'llong' {aka 'long long int'} [-Wnarrowing]
32 | return {left.p * right.q + right.p * left.q, left.q * right.q};
| ~~~~~~~^~~~~~~~~
naan.cpp: In function 'Fraction operator-(const Fraction&, const Fraction&)':
naan.cpp:37:34: warning: narrowing conversion of '((((__int128)left.Fraction::p) * ((__int128)right.Fraction::q)) - (((__int128)right.Fraction::p) * ((__int128)left.Fraction::q)))' from '__int128' to 'llong' {aka 'long long int'} [-Wnarrowing]
37 | return {left.p * right.q - right.p * left.q, left.q * right.q};
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
naan.cpp:37:61: warning: narrowing conversion of '(((__int128)left.Fraction::q) * ((__int128)right.Fraction::q))' from '__int128' to 'llong' {aka 'long long int'} [-Wnarrowing]
37 | return {left.p * right.q - right.p * left.q, left.q * right.q};
| ~~~~~~~^~~~~~~~~
naan.cpp: In function 'Fraction operator*(const Fraction&, const Fraction&)':
naan.cpp:42:24: warning: narrowing conversion of '(((__int128)left.Fraction::p) * ((__int128)right.Fraction::p))' from '__int128' to 'llong' {aka 'long long int'} [-Wnarrowing]
42 | return {left.p * right.p, left.q * right.q};
| ~~~~~~~^~~~~~~~~
naan.cpp:42:42: warning: narrowing conversion of '(((__int128)left.Fraction::q) * ((__int128)right.Fraction::q))' from '__int128' to 'llong' {aka 'long long int'} [-Wnarrowing]
42 | return {left.p * right.p, left.q * right.q};
| ~~~~~~~^~~~~~~~~
naan.cpp: In function 'Fraction operator/(const Fraction&, const Fraction&)':
naan.cpp:47:24: warning: narrowing conversion of '(((__int128)left.Fraction::p) * ((__int128)right.Fraction::q))' from '__int128' to 'llong' {aka 'long long int'} [-Wnarrowing]
47 | return {left.p * right.q, left.q * right.p};
| ~~~~~~~^~~~~~~~~
naan.cpp:47:42: warning: narrowing conversion of '(((__int128)left.Fraction::q) * ((__int128)right.Fraction::p))' from '__int128' to 'llong' {aka 'long long int'} [-Wnarrowing]
47 | return {left.p * right.q, left.q * right.p};
| ~~~~~~~^~~~~~~~~