Untitled

 avatar
user_2381398
plain_text
a year ago
26 kB
4
Indexable
Never
$ g++ -std=gnu++11 -Wno-deprecated-register parser.tab.c -o $@ -ll -ly
parser.y: In function ‘int yyparse()’:
parser.y:444:58: error: no match for ‘operator=’ (operand types are ‘content’ and ‘int’)
  444 |         $$ = lookup($1);
      |                                                          ^
parser.y:25:8: note: candidate: ‘content& content::operator=(const content&)’
   25 | struct content {
      |        ^~~~~~~
parser.y:25:8: note:   no known conversion for argument 1 from ‘int’ to ‘const content&’
parser.y:25:8: note: candidate: ‘content& content::operator=(content&&)’
parser.y:25:8: note:   no known conversion for argument 1 from ‘int’ to ‘content&&’
parser.y:447:31: error: cannot convert ‘content’ to ‘int’ in assignment
  447 |         a.value.ival = $$;
      |                        ~~~    ^
      |                               |
      |                               content
parser.y:451:61: error: no match for ‘operator=’ (operand types are ‘content’ and ‘int’)
  451 |                 $$=-$2;
      |                                                             ^
parser.y:25:8: note: candidate: ‘content& content::operator=(const content&)’
   25 | struct content {
      |        ^~~~~~~
parser.y:25:8: note:   no known conversion for argument 1 from ‘int’ to ‘const content&’
parser.y:25:8: note: candidate: ‘content& content::operator=(content&&)’
parser.y:25:8: note:   no known conversion for argument 1 from ‘int’ to ‘content&&’
parser.y:457:65: error: no match for ‘operator+’ (operand types are ‘content’ and ‘content’)
  457 |                 $$ = $1 + $3;
      |                                                                 ^       
      |                                                   |                         |
      |                                                   content                   content
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_algobase.h:67,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/char_traits.h:39,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_iterator.h:568:5: note: candidate: ‘template<class _Iterator> std::reverse_iterator<_Iterator> std::operator+(typename std::reverse_iterator<_Iterator>::difference_type, const std::reverse_iterator<_Iterator>&)’
  568 |     operator+(typename reverse_iterator<_Iterator>::difference_type __n,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_iterator.h:568:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘const std::reverse_iterator<_Iterator>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_algobase.h:67,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/char_traits.h:39,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_iterator.h:1646:5: note: candidate: ‘template<class _Iterator> std::move_iterator<_IteratorL> std::operator+(typename std::move_iterator<_IteratorL>::difference_type, const std::move_iterator<_IteratorL>&)’
 1646 |     operator+(typename move_iterator<_Iterator>::difference_type __n,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_iterator.h:1646:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘const std::move_iterator<_IteratorL>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:55,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6095:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::basic_string<_CharT, _Traits, _Alloc>&, const std::basic_string<_CharT, _Traits, _Alloc>&)’
 6095 |     operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6095:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘const std::basic_string<_CharT, _Traits, _Alloc>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:56,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.tcc:1169:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const _CharT*, const std::basic_string<_CharT, _Traits, _Alloc>&)’
 1169 |     operator+(const _CharT* __lhs,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.tcc:1169:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   mismatched types ‘const _CharT*’ and ‘content’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:56,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.tcc:1189:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(_CharT, const std::basic_string<_CharT, _Traits, _Alloc>&)’
 1189 |     operator+(_CharT __lhs, const basic_string<_CharT, _Traits, _Alloc>& __rhs)
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.tcc:1189:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘const std::basic_string<_CharT, _Traits, _Alloc>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:55,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6132:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::basic_string<_CharT, _Traits, _Alloc>&, const _CharT*)’
 6132 |     operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6132:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘const std::basic_string<_CharT, _Traits, _Alloc>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:55,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6148:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::basic_string<_CharT, _Traits, _Alloc>&, _CharT)’
 6148 |     operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs, _CharT __rhs)
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6148:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘const std::basic_string<_CharT, _Traits, _Alloc>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:55,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6160:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::basic_string<_CharT, _Traits, _Alloc>&&, const std::basic_string<_CharT, _Traits, _Alloc>&)’
 6160 |     operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6160:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘std::basic_string<_CharT, _Traits, _Alloc>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:55,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6166:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::basic_string<_CharT, _Traits, _Alloc>&, std::basic_string<_CharT, _Traits, _Alloc>&&)’
 6166 |     operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6166:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘const std::basic_string<_CharT, _Traits, _Alloc>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:55,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6172:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::basic_string<_CharT, _Traits, _Alloc>&&, std::basic_string<_CharT, _Traits, _Alloc>&&)’
 6172 |     operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6172:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘std::basic_string<_CharT, _Traits, _Alloc>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:55,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6194:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const _CharT*, std::basic_string<_CharT, _Traits, _Alloc>&&)’
 6194 |     operator+(const _CharT* __lhs,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6194:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   mismatched types ‘const _CharT*’ and ‘content’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:55,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6200:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(_CharT, std::basic_string<_CharT, _Traits, _Alloc>&&)’
 6200 |     operator+(_CharT __lhs,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6200:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘std::basic_string<_CharT, _Traits, _Alloc>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:55,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6206:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::basic_string<_CharT, _Traits, _Alloc>&&, const _CharT*)’
 6206 |     operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6206:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘std::basic_string<_CharT, _Traits, _Alloc>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/string:55,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/locale_classes.h:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/ios_base.h:41,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:42,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6212:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::basic_string<_CharT, _Traits, _Alloc>&&, _CharT)’
 6212 |     operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/basic_string.h:6212:5: note:   template argument deduction/substitution failed:
parser.y:457:89: note:   ‘content’ is not derived from ‘std::basic_string<_CharT, _Traits, _Alloc>’
  457 |                 $$ = $1 + $3;
      |                                                                                         ^
parser.y:460:65: error: no match for ‘operator-’ (operand types are ‘content’ and ‘content’)
  460 |                 $$ = $1 - $3;
      |                                                                 ^       
      |                                                   |                         |
      |                                                   content                   content
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_algobase.h:67,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/char_traits.h:39,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_iterator.h:560:5: note: candidate: ‘template<class _IteratorL, class _IteratorR> decltype ((__y.base() - __x.base())) std::operator-(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&)’
  560 |     operator-(const reverse_iterator<_IteratorL>& __x,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_iterator.h:560:5: note:   template argument deduction/substitution failed:
parser.y:460:89: note:   ‘content’ is not derived from ‘const std::reverse_iterator<_Iterator>’
  460 |                 $$ = $1 - $3;
      |                                                                                         ^
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_algobase.h:67,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/char_traits.h:39,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ios:40,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/ostream:38,
                 from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/iostream:39,
                 from parser.y:6:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_iterator.h:1639:5: note: candidate: ‘template<class _IteratorL, class _IteratorR> decltype ((__x.base() - __y.base())) std::operator-(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorR>&)’
 1639 |     operator-(const move_iterator<_IteratorL>& __x,
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_iterator.h:1639:5: note:   template argument deduction/substitution failed:
parser.y:460:89: note:   ‘content’ is not derived from ‘const std::move_iterator<_IteratorL>’
  460 |                 $$ = $1 - $3;
      |                                                                                         ^
parser.y:463:65: error: no match for ‘operator*’ (operand types are ‘content’ and ‘content’)
  463 |                 $$ = $1 * $3;
      |                                                                 ^       
      |                                                   |                         |
      |                                                   content                   content
parser.y:466:65: error: no match for ‘operator/’ (operand types are ‘content’ and ‘content’)
  466 |                 $$ = $1 / $3;
      |                                                                 ^       
      |                                                   |                         |
      |                                                   content                   content
parser.y:469:65: error: no match for ‘operator%’ (operand types are ‘content’ and ‘content’)
  469 |                 $$ = $1 % $3;
      |                                                                 ^       
      |                                                   |                         |
      |                                                   content                   content
parser.y:565:40: error: no match for ‘operator=’ (operand types are ‘content’ and ‘int’)
  565 |         $$ = a.value.ival;
      |                                        ^
parser.y:25:8: note: candidate: ‘content& content::operator=(const content&)’
   25 | struct content {
      |        ^~~~~~~
parser.y:25:8: note:   no known conversion for argument 1 from ‘int’ to ‘const content&’
parser.y:25:8: note: candidate: ‘content& content::operator=(content&&)’
parser.y:25:8: note:   no known conversion for argument 1 from ‘int’ to ‘content&&’
parser.y:573:48: error: no match for ‘operator=’ (operand types are ‘content’ and ‘int’)
  573 |                 $$ = a.value.ival;
      |                                                ^
parser.y:25:8: note: candidate: ‘content& content::operator=(const content&)’
   25 | struct content {
      |        ^~~~~~~
parser.y:25:8: note:   no known conversion for argument 1 from ‘int’ to ‘const content&’
parser.y:25:8: note: candidate: ‘content& content::operator=(content&&)’
parser.y:25:8: note:   no known conversion for argument 1 from ‘int’ to ‘content&&’
parser.y:628:50: error: no match for ‘operator=’ (operand types are ‘content’ and ‘int’)
  628 |         $$ = lookup($1);
      |                                                  ^
parser.y:25:8: note: candidate: ‘content& content::operator=(const content&)’
   25 | struct content {
      |        ^~~~~~~
parser.y:25:8: note:   no known conversion for argument 1 from ‘int’ to ‘const content&’
parser.y:25:8: note: candidate: ‘content& content::operator=(content&&)’
parser.y:25:8: note:   no known conversion for argument 1 from ‘int’ to ‘content&&’
parser.y:631:31: error: cannot convert ‘content’ to ‘int’ in assignment
  631 |         a.value.ival = $$;
      |                        ~~~    ^
      |                               |
      |                               content
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-deprecated-register’ may have been intended to silence earlier diagnostics