vmlemon / Orion

Next-generation, L4Ka::Pistachio-based operating system
7 stars 0 forks source link

POWER4 clean build regression? #21

Open vmlemon opened 5 years ago

vmlemon commented 5 years ago
[root@fedora28 kernel]# make BUILDDIR=/root/Orion/kernel/p2

Setting up build directory /root/Orion/kernel/p2 ...
done.

[root@fedora28 kernel]# cd p2/
[root@fedora28 p2]# ls
config  include  Makeconf.local  Makefile
[root@fedora28 p2]# make menuconfig
make[1]: Entering directory '/root/Orion/kernel/p2'
make[2]: Entering directory '/root/Orion/kernel/p2/config'
Compiling rules, please wait......(0.07 sec) Done.
Rewriting Makeconf.local ...
make[2]: Leaving directory '/root/Orion/kernel/p2/config'
make[1]: Leaving directory '/root/Orion/kernel/p2'
[root@fedora28 p2]# make
make[1]: Entering directory '/root/Orion/kernel/p2'
===> Building dependencies
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ &&  gcc  -nostdinc -I/root/Orion/kernel/p2/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4 -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4 -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p2/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/syscalls.h:90:40: error: macro "SYS_EXCHANGE_REGISTERS" requires 8 arguments, but only 7 given
    word_t uhandle, threadid_t pager_tid);
                                        ^
In file included from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/space.h:41:1: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 space_t * allocate_space();
 ^~~~~~~
 size_t
/root/Orion/kernel/src/api/v4/space.h:42:17: error: variable or field ‘free_space’ declared void
 void free_space(space_t * space);
                 ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:42:17: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:42:17: note: suggested alternative: ‘size_t’
 void free_space(space_t * space);
                 ^~~~~~~
                 size_t
/root/Orion/kernel/src/api/v4/space.h:42:27: error: ‘space’ was not declared in this scope
 void free_space(space_t * space);
                           ^~~~~
/root/Orion/kernel/src/api/v4/space.h:44:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * sigma0_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:45:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * sigma1_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:46:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * roottask_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:48:29: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_sigma0_space(space_t * space)
                             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:48:29: warning: ‘is_sigma0_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:48:29: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:48:29: note: suggested alternative: ‘size_t’
 INLINE bool is_sigma0_space(space_t * space)
                             ^~~~~~~
                             size_t
/root/Orion/kernel/src/api/v4/space.h:48:39: error: ‘space’ was not declared in this scope
 INLINE bool is_sigma0_space(space_t * space)
                                       ^~~~~
/root/Orion/kernel/src/api/v4/space.h:53:29: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_sigma1_space(space_t * space)
                             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:53:29: warning: ‘is_sigma1_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:53:29: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:53:29: note: suggested alternative: ‘size_t’
 INLINE bool is_sigma1_space(space_t * space)
                             ^~~~~~~
                             size_t
/root/Orion/kernel/src/api/v4/space.h:53:39: error: ‘space’ was not declared in this scope
 INLINE bool is_sigma1_space(space_t * space)
                                       ^~~~~
/root/Orion/kernel/src/api/v4/space.h:58:31: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_roottask_space(space_t * space)
                               ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:58:31: warning: ‘is_roottask_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:58:31: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:58:31: note: suggested alternative: ‘size_t’
 INLINE bool is_roottask_space(space_t * space)
                               ^~~~~~~
                               size_t
/root/Orion/kernel/src/api/v4/space.h:58:41: error: ‘space’ was not declared in this scope
 INLINE bool is_roottask_space(space_t * space)
                                         ^~~~~
/root/Orion/kernel/src/api/v4/space.h:63:33: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_privileged_space(space_t * space)
                                 ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:63:33: warning: ‘is_privileged_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:63:33: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:63:33: note: suggested alternative: ‘size_t’
 INLINE bool is_privileged_space(space_t * space)
                                 ^~~~~~~
                                 size_t
/root/Orion/kernel/src/api/v4/space.h:63:43: error: ‘space’ was not declared in this scope
 INLINE bool is_privileged_space(space_t * space)
                                           ^~~~~
/root/Orion/kernel/src/api/v4/space.h:71:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_mappable(addr_t addr)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h: In function ‘bool is_mappable(addr_t)’:
/root/Orion/kernel/src/api/v4/space.h:74:13: error: ‘is_user_area’ was not declared in this scope
     return (is_user_area(addr) &&
             ^~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h:75:4: error: ‘get_kip_page_area’ was not declared in this scope
  (!get_kip_page_area().is_addr_in_fpage(addr)) &&
    ^~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h:76:4: error: ‘get_utcb_page_area’ was not declared in this scope
  (!get_utcb_page_area().is_addr_in_fpage(addr)));
    ^~~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h: At global scope:
/root/Orion/kernel/src/api/v4/space.h:82:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_mappable(fpage_t fpage)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool space_t::is_mappable(fpage_t fpage)
                                  ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: warning: ‘is_mappable’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:82:34: error: ‘bool is_mappable’ redeclared as different kind of symbol
/root/Orion/kernel/src/api/v4/space.h:71:13: note: previous declaration ‘bool is_mappable(addr_t)’
 INLINE bool space_t::is_mappable(addr_t addr)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: error: ‘fpage_t’ was not declared in this scope
 INLINE bool space_t::is_mappable(fpage_t fpage)
                                  ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_user_area(fpage_t fpage)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:35: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool space_t::is_user_area(fpage_t fpage)
                                   ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:35: warning: ‘is_user_area’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:93:35: error: ‘fpage_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:100:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_initialized()
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h: In function ‘bool is_initialized()’:
/root/Orion/kernel/src/api/v4/space.h:102:13: error: ‘get_kip_page_area’ was not declared in this scope
     return !get_kip_page_area().is_nil_fpage();
             ^~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/kernelinterface.h:37,
                 from /root/Orion/kernel/src/api/v4/thread.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:44,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/memdesc.h: In member function ‘void memdesc_t::set(memdesc_t::type_e, word_t, bool, addr_t, addr_t)’:
/root/Orion/kernel/src/api/v4/memdesc.h:118:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _type = type;
              ^~~~
/root/Orion/kernel/src/api/v4/memdesc.h:119:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _t    = t;
              ^
/root/Orion/kernel/src/api/v4/memdesc.h:121:29: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _low  = ((word_t) low) >> 10;
              ~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/memdesc.h:122:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _high = ((word_t) high) >> 10;
              ~~~~~~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/api/v4/thread.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:44,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_user_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:169:52: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_user_base(word_t base)  { user_base = base; }
                                                    ^~~~
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_system_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:170:56: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_system_base(word_t base)  { system_base = base; }
                                                        ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:44,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::irqthread(word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:71:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = irq;
                            ^~~
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::threadid(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:78:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.version = version;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:79:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = threadno;
                            ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h: In member function ‘void threadid_t::set_global_id(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:126:23: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.threadno = threadno;
                       ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:127:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.version = version;
                      ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:46,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/fpage.h: In member function ‘void fpage_t::set(word_t, word_t, bool, bool, bool)’:
/root/Orion/kernel/src/api/v4/fpage.h:69:60: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      x.base = (base & (~0 >> (L4_FPAGE_BASE_BITS - size))) >> 10;
               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/fpage.h:70:15: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      x.size = size;
               ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:47,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void msg_tag_t::set(word_t, word_t, word_t, bool, bool)’:
/root/Orion/kernel/src/api/v4/ipc.h:82:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.typed = typed;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h:83:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.untyped = untyped;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/ipc.h:84:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:48’ may change value [-Wconversion]
      this->send.label = label;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void acceptor_t::set_rcv_window(fpage_t)’:
/root/Orion/kernel/src/api/v4/ipc.h:232:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:60’ may change value [-Wconversion]
  { x.rcv_window = (fpage.raw >> 4); };
                   ~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h: At global scope:
/root/Orion/kernel/src/api/v4/tcb.h:131:62: error: ‘space_t::access_e’ has not been declared
     void send_pagefault_ipc(addr_t addr, addr_t ip, space_t::access_e access);
                                                              ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘tcb_t* tcb_t::get_partner_tcb()’:
/root/Orion/kernel/src/api/v4/tcb.h:425:29: error: invalid use of incomplete type ‘class space_t’
     return this->get_space()->get_tcb(partner);
                             ^~
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::clear_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:570:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits = 0;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::add_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:578:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits |= bits;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::sub_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:586:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits &= ~(bits);
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘word_t tcb_t::get_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:594:24: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
     return get_utcb()->notify_bits;
                        ^~~~~~~~~~~
                        notify_mask
In file included from /root/Orion/kernel/src/arch/powerpc64/debug.h:36,
                 from /root/Orion/kernel/src/debug.h:75,
                 from /root/Orion/kernel/src/api/v4/tcb.h:36,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/syscalls.h: At global scope:
/root/Orion/kernel/src/api/v4/syscalls.h:53:50: error: ‘timeout_t’ has not been declared
 SYS_IPC (threadid_t to_tid, threadid_t from_tid, timeout_t timeout);
                                                  ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/syscalls.h:75:21: note: in definition of macro ‘SYS_IPC’
  sys_ipc (to, from, timeout)
                     ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/syscalls.h:88:1: error: ‘SYS_EXCHANGE_REGISTERS’ does not name a type
 SYS_EXCHANGE_REGISTERS (threadid_t dest_tid, word_t control,
 ^~~~~~~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:112:13: error: no declaration matches ‘void tcb_t::allocate()’
 INLINE void tcb_t::allocate()
             ^~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:216:10: note: candidate is: ‘bool tcb_t::allocate()’
     bool allocate();
          ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In function ‘void initial_switch_to(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:224:18: error: ‘get_kernel_space’ was not declared in this scope
     word_t asr = get_kernel_space()->get_vsid_asid();
                  ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function ‘void tcb_t::switch_to(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271:10: error: ‘get_kernel_space’ was not declared in this scope
  space = get_kernel_space();
          ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271:10: note: suggested alternative: ‘kernel_stack’
  space = get_kernel_space();
          ^~~~~~~~~~~~~~~~
          kernel_stack
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273:14: error: ‘get_kernel_space’ was not declared in this scope
  currspace = get_kernel_space();
              ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273:14: note: suggested alternative: ‘kernel_stack’
  currspace = get_kernel_space();
              ^~~~~~~~~~~~~~~~
              kernel_stack
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:277:23: error: invalid use of incomplete type ‘class space_t’
     word_t asr = space->get_vsid_asid();
                       ^~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: error: no declaration matches ‘void tcb_t::copy_saved_regs(tcb_t*)’
 INLINE void tcb_t::copy_saved_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: note: no functions named ‘void tcb_t::copy_saved_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: error: no declaration matches ‘void tcb_t::copy_volatile_regs(tcb_t*)’
 INLINE void tcb_t::copy_volatile_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: note: no functions named ‘void tcb_t::copy_volatile_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:735:33: error: ‘timeout_t’ has not been declared
                                 timeout_t timeout)
                                 ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:734:18: error: no declaration matches ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)’
 INLINE msg_tag_t tcb_t::do_ipc (threadid_t to_tid, threadid_t from_tid,
                  ^~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:130:15: note: candidate is: ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t)’
     msg_tag_t do_ipc(threadid_t to_tid, threadid_t from_tid);
               ^~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:748:41: error: invalid use of incomplete type ‘class space_t’
 inline void space_t::add_tcb(tcb_t * tcb)
                                         ^
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:763:44: error: invalid use of incomplete type ‘class space_t’
 inline bool space_t::remove_tcb(tcb_t * tcb)
                                            ^
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘bool tcb_t::is_local_cpu()’:
/root/Orion/kernel/src/api/v4/tcb.h:739:13: error: ‘get_current_cpu’ was not declared in this scope
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:739:13: note: suggested alternative: ‘get_current_tcb’
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
             get_current_tcb
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:34:
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc: At global scope:
/root/Orion/kernel/src/generic/mkasmsym.h:40:55: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_sign_t { char x[32*((value) < 0 ? 1 : 2)]; };  \
                                                       ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:42:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b0_t { char x[32*((__ABSVALUE(value) >> 0) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:44:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b1_t { char x[32*((__ABSVALUE(value) >> 8) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:46:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b2_t { char x[32*((__ABSVALUE(value) >> 16) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:48:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b3_t { char x[32*((__ABSVALUE(value) >> 24) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:50:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b4_t { char x[32*((__ABSVALUE(value) >> 32) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:52:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b5_t { char x[32*((__ABSVALUE(value) >> 40) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:54:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b6_t { char x[32*((__ABSVALUE(value) >> 48) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:56:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b7_t { char x[32*((__ABSVALUE(value) >> 56) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:40:55: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_sign_t { char x[32*((value) < 0 ? 1 : 2)]; };  \
                                                       ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:42:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b0_t { char x[32*((__ABSVALUE(value) >> 0) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:44:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b1_t { char x[32*((__ABSVALUE(value) >> 8) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:46:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b2_t { char x[32*((__ABSVALUE(value) >> 16) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:48:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b3_t { char x[32*((__ABSVALUE(value) >> 24) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:50:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b4_t { char x[32*((__ABSVALUE(value) >> 32) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:52:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b5_t { char x[32*((__ABSVALUE(value) >> 40) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:54:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b6_t { char x[32*((__ABSVALUE(value) >> 48) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:56:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b7_t { char x[32*((__ABSVALUE(value) >> 56) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:40:55: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_sign_t { char x[32*((value) < 0 ? 1 : 2)]; };  \
                                                       ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:42:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b0_t { char x[32*((__ABSVALUE(value) >> 0) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:44:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b1_t { char x[32*((__ABSVALUE(value) >> 8) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:46:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b2_t { char x[32*((__ABSVALUE(value) >> 16) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:48:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b3_t { char x[32*((__ABSVALUE(value) >> 24) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:50:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b4_t { char x[32*((__ABSVALUE(value) >> 32) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:52:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b5_t { char x[32*((__ABSVALUE(value) >> 40) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:54:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b6_t { char x[32*((__ABSVALUE(value) >> 48) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:56:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b7_t { char x[32*((__ABSVALUE(value) >> 56) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:40:55: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_sign_t { char x[32*((value) < 0 ? 1 : 2)]; };  \
                                                       ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:42:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b0_t { char x[32*((__ABSVALUE(value) >> 0) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:44:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b1_t { char x[32*((__ABSVALUE(value) >> 8) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:46:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b2_t { char x[32*((__ABSVALUE(value) >> 16) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:48:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b3_t { char x[32*((__ABSVALUE(value) >> 24) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:50:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b4_t { char x[32*((__ABSVALUE(value) >> 32) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:52:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b5_t { char x[32*((__ABSVALUE(value) >> 40) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:54:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b6_t { char x[32*((__ABSVALUE(value) >> 48) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:56:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b7_t { char x[32*((__ABSVALUE(value) >> 56) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:40:55: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_sign_t { char x[32*((value) < 0 ? 1 : 2)]; };  \
                                                       ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:42:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b0_t { char x[32*((__ABSVALUE(value) >> 0) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:44:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b1_t { char x[32*((__ABSVALUE(value) >> 8) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:46:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b2_t { char x[32*((__ABSVALUE(value) >> 16) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:48:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b3_t { char x[32*((__ABSVALUE(value) >> 24) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:50:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b4_t { char x[32*((__ABSVALUE(value) >> 32) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:52:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b5_t { char x[32*((__ABSVALUE(value) >> 40) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:54:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b6_t { char x[32*((__ABSVALUE(value) >> 48) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:56:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b7_t { char x[32*((__ABSVALUE(value) >> 56) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
===> src/generic/lib.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p2/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4 -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4 -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p2/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/lib.cc
/root/Orion/kernel/src/generic/lib.cc: In function ‘void* memset(void*, unsigned int, unsigned int)’:
/root/Orion/kernel/src/generic/lib.cc:56:9: warning: conversion from ‘unsigned int’ to ‘u8_t’ {aka ‘unsigned char’} may change value [-Wconversion]
  *s++ = c;
         ^
===> src/generic/kmemory.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p2/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4 -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4 -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p2/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/kmemory.cc
===> src/generic/traceids.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p2/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4 -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4 -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p2/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/traceids.cc
===> src/generic/tracebuffer.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p2/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4 -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4 -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p2/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/tracebuffer.cc
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:90:40: error: macro "SYS_EXCHANGE_REGISTERS" requires 8 arguments, but only 7 given
    word_t uhandle, threadid_t pager_tid);
                                        ^
In file included from /root/Orion/kernel/src/api/v4/kernelinterface.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:86:
/root/Orion/kernel/src/api/v4/memdesc.h: In member function ‘void memdesc_t::set(memdesc_t::type_e, word_t, bool, addr_t, addr_t)’:
/root/Orion/kernel/src/api/v4/memdesc.h:118:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _type = type;
              ^~~~
/root/Orion/kernel/src/api/v4/memdesc.h:119:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _t    = t;
              ^
/root/Orion/kernel/src/api/v4/memdesc.h:121:29: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _low  = ((word_t) low) >> 10;
              ~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/memdesc.h:122:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _high = ((word_t) high) >> 10;
              ~~~~~~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/generic/tracebuffer.cc:86:
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_user_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:169:52: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_user_base(word_t base)  { user_base = base; }
                                                    ^~~~
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_system_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:170:56: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_system_base(word_t base)  { system_base = base; }
                                                        ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/space.h: At global scope:
/root/Orion/kernel/src/api/v4/space.h:41:1: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 space_t * allocate_space();
 ^~~~~~~
 size_t
/root/Orion/kernel/src/api/v4/space.h:42:17: error: variable or field ‘free_space’ declared void
 void free_space(space_t * space);
                 ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:42:17: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:42:17: note: suggested alternative: ‘size_t’
 void free_space(space_t * space);
                 ^~~~~~~
                 size_t
/root/Orion/kernel/src/api/v4/space.h:42:27: error: ‘space’ was not declared in this scope
 void free_space(space_t * space);
                           ^~~~~
/root/Orion/kernel/src/api/v4/space.h:44:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * sigma0_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:45:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * sigma1_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:46:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * roottask_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:48:29: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_sigma0_space(space_t * space)
                             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:48:29: warning: ‘is_sigma0_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:48:29: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:48:29: note: suggested alternative: ‘size_t’
 INLINE bool is_sigma0_space(space_t * space)
                             ^~~~~~~
                             size_t
/root/Orion/kernel/src/api/v4/space.h:48:39: error: ‘space’ was not declared in this scope
 INLINE bool is_sigma0_space(space_t * space)
                                       ^~~~~
/root/Orion/kernel/src/api/v4/space.h:53:29: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_sigma1_space(space_t * space)
                             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:53:29: warning: ‘is_sigma1_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:53:29: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:53:29: note: suggested alternative: ‘size_t’
 INLINE bool is_sigma1_space(space_t * space)
                             ^~~~~~~
                             size_t
/root/Orion/kernel/src/api/v4/space.h:53:39: error: ‘space’ was not declared in this scope
 INLINE bool is_sigma1_space(space_t * space)
                                       ^~~~~
/root/Orion/kernel/src/api/v4/space.h:58:31: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_roottask_space(space_t * space)
                               ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:58:31: warning: ‘is_roottask_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:58:31: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:58:31: note: suggested alternative: ‘size_t’
 INLINE bool is_roottask_space(space_t * space)
                               ^~~~~~~
                               size_t
/root/Orion/kernel/src/api/v4/space.h:58:41: error: ‘space’ was not declared in this scope
 INLINE bool is_roottask_space(space_t * space)
                                         ^~~~~
/root/Orion/kernel/src/api/v4/space.h:63:33: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_privileged_space(space_t * space)
                                 ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:63:33: warning: ‘is_privileged_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:63:33: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:63:33: note: suggested alternative: ‘size_t’
 INLINE bool is_privileged_space(space_t * space)
                                 ^~~~~~~
                                 size_t
/root/Orion/kernel/src/api/v4/space.h:63:43: error: ‘space’ was not declared in this scope
 INLINE bool is_privileged_space(space_t * space)
                                           ^~~~~
/root/Orion/kernel/src/api/v4/space.h:71:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_mappable(addr_t addr)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h: In function ‘bool is_mappable(addr_t)’:
/root/Orion/kernel/src/api/v4/space.h:74:13: error: ‘is_user_area’ was not declared in this scope
     return (is_user_area(addr) &&
             ^~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h:75:4: error: ‘get_kip_page_area’ was not declared in this scope
  (!get_kip_page_area().is_addr_in_fpage(addr)) &&
    ^~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h:76:4: error: ‘get_utcb_page_area’ was not declared in this scope
  (!get_utcb_page_area().is_addr_in_fpage(addr)));
    ^~~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h: At global scope:
/root/Orion/kernel/src/api/v4/space.h:82:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_mappable(fpage_t fpage)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool space_t::is_mappable(fpage_t fpage)
                                  ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: warning: ‘is_mappable’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:82:34: error: ‘bool is_mappable’ redeclared as different kind of symbol
/root/Orion/kernel/src/api/v4/space.h:71:13: note: previous declaration ‘bool is_mappable(addr_t)’
 INLINE bool space_t::is_mappable(addr_t addr)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: error: ‘fpage_t’ was not declared in this scope
 INLINE bool space_t::is_mappable(fpage_t fpage)
                                  ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_user_area(fpage_t fpage)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:35: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool space_t::is_user_area(fpage_t fpage)
                                   ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:35: warning: ‘is_user_area’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:93:35: error: ‘fpage_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:100:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_initialized()
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h: In function ‘bool is_initialized()’:
/root/Orion/kernel/src/api/v4/space.h:102:13: error: ‘get_kip_page_area’ was not declared in this scope
     return !get_kip_page_area().is_nil_fpage();
             ^~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:44,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::irqthread(word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:71:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = irq;
                            ^~~
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::threadid(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:78:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.version = version;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:79:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = threadno;
                            ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h: In member function ‘void threadid_t::set_global_id(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:126:23: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.threadno = threadno;
                       ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:127:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.version = version;
                      ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:46,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/fpage.h: In member function ‘void fpage_t::set(word_t, word_t, bool, bool, bool)’:
/root/Orion/kernel/src/api/v4/fpage.h:69:60: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      x.base = (base & (~0 >> (L4_FPAGE_BASE_BITS - size))) >> 10;
               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/fpage.h:70:15: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      x.size = size;
               ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:47,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void msg_tag_t::set(word_t, word_t, word_t, bool, bool)’:
/root/Orion/kernel/src/api/v4/ipc.h:82:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.typed = typed;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h:83:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.untyped = untyped;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/ipc.h:84:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:48’ may change value [-Wconversion]
      this->send.label = label;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void acceptor_t::set_rcv_window(fpage_t)’:
/root/Orion/kernel/src/api/v4/ipc.h:232:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:60’ may change value [-Wconversion]
  { x.rcv_window = (fpage.raw >> 4); };
                   ~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: At global scope:
/root/Orion/kernel/src/api/v4/tcb.h:131:62: error: ‘space_t::access_e’ has not been declared
     void send_pagefault_ipc(addr_t addr, addr_t ip, space_t::access_e access);
                                                              ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘tcb_t* tcb_t::get_partner_tcb()’:
/root/Orion/kernel/src/api/v4/tcb.h:425:29: error: invalid use of incomplete type ‘class space_t’
     return this->get_space()->get_tcb(partner);
                             ^~
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::clear_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:570:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits = 0;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::add_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:578:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits |= bits;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::sub_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:586:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits &= ~(bits);
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘word_t tcb_t::get_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:594:24: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
     return get_utcb()->notify_bits;
                        ^~~~~~~~~~~
                        notify_mask
In file included from /root/Orion/kernel/src/arch/powerpc64/debug.h:36,
                 from /root/Orion/kernel/src/debug.h:75,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:84:
/root/Orion/kernel/src/api/v4/syscalls.h: At global scope:
/root/Orion/kernel/src/api/v4/syscalls.h:53:50: error: ‘timeout_t’ has not been declared
 SYS_IPC (threadid_t to_tid, threadid_t from_tid, timeout_t timeout);
                                                  ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/syscalls.h:75:21: note: in definition of macro ‘SYS_IPC’
  sys_ipc (to, from, timeout)
                     ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:88:1: error: ‘SYS_EXCHANGE_REGISTERS’ does not name a type
 SYS_EXCHANGE_REGISTERS (threadid_t dest_tid, word_t control,
 ^~~~~~~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:112:13: error: no declaration matches ‘void tcb_t::allocate()’
 INLINE void tcb_t::allocate()
             ^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:216:10: note: candidate is: ‘bool tcb_t::allocate()’
     bool allocate();
          ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In function ‘void initial_switch_to(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:224:18: error: ‘get_kernel_space’ was not declared in this scope
     word_t asr = get_kernel_space()->get_vsid_asid();
                  ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function ‘void tcb_t::switch_to(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271:10: error: ‘get_kernel_space’ was not declared in this scope
  space = get_kernel_space();
          ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271:10: note: suggested alternative: ‘kernel_stack’
  space = get_kernel_space();
          ^~~~~~~~~~~~~~~~
          kernel_stack
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273:14: error: ‘get_kernel_space’ was not declared in this scope
  currspace = get_kernel_space();
              ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273:14: note: suggested alternative: ‘kernel_stack’
  currspace = get_kernel_space();
              ^~~~~~~~~~~~~~~~
              kernel_stack
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:277:23: error: invalid use of incomplete type ‘class space_t’
     word_t asr = space->get_vsid_asid();
                       ^~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: error: no declaration matches ‘void tcb_t::copy_saved_regs(tcb_t*)’
 INLINE void tcb_t::copy_saved_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: note: no functions named ‘void tcb_t::copy_saved_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: error: no declaration matches ‘void tcb_t::copy_volatile_regs(tcb_t*)’
 INLINE void tcb_t::copy_volatile_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: note: no functions named ‘void tcb_t::copy_volatile_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:735:33: error: ‘timeout_t’ has not been declared
                                 timeout_t timeout)
                                 ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:734:18: error: no declaration matches ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)’
 INLINE msg_tag_t tcb_t::do_ipc (threadid_t to_tid, threadid_t from_tid,
                  ^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:130:15: note: candidate is: ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t)’
     msg_tag_t do_ipc(threadid_t to_tid, threadid_t from_tid);
               ^~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:748:41: error: invalid use of incomplete type ‘class space_t’
 inline void space_t::add_tcb(tcb_t * tcb)
                                         ^
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:763:44: error: invalid use of incomplete type ‘class space_t’
 inline bool space_t::remove_tcb(tcb_t * tcb)
                                            ^
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘bool tcb_t::is_local_cpu()’:
/root/Orion/kernel/src/api/v4/tcb.h:739:13: error: ‘get_current_cpu’ was not declared in this scope
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:739:13: note: suggested alternative: ‘get_current_tcb’
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
             get_current_tcb
In file included from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/schedule.h: At global scope:
/root/Orion/kernel/src/api/v4/schedule.h:198:10: error: extra qualification ‘scheduler_t::’ on member ‘switch_highest’ [-fpermissive]
     void scheduler_t::switch_highest(tcb_t *current, tcb_t * tcb);
          ^~~~~~~~~~~
make[1]: *** [/root/Orion/kernel/Mk/Makeconf:208: src/generic/tracebuffer.o] Error 1
make[1]: Leaving directory '/root/Orion/kernel/p2'
make: *** [Makefile:38: all] Error 2
[root@fedora28 p2]# 
vmlemon commented 5 years ago

Trying to build with gcc34:

[root@fedora28 p2]# CC=gcc34 make
make[1]: Entering directory '/root/Orion/kernel/p2'
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ && gcc34 -nostdinc -I/root/Orion/kernel/p2/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/3.4.6/include/ -Upowerpc64 -Upower4 -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4 -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p2/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc
In file included from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/space.h:41: error: expected constructor, destructor, or type conversion before '*' token
/root/Orion/kernel/src/api/v4/space.h:42: error: variable or field `free_space' declared void
/root/Orion/kernel/src/api/v4/space.h:42: error: `space_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:42: error: `space' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:44: error: expected initializer before '*' token
/root/Orion/kernel/src/api/v4/space.h:45: error: expected initializer before '*' token
/root/Orion/kernel/src/api/v4/space.h:46: error: expected initializer before '*' token
/root/Orion/kernel/src/api/v4/space.h:48: warning: `is_sigma0_space' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:48: error: `is_sigma0_space' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:48: error: `space_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:48: error: `space' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:49: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:53: warning: `is_sigma1_space' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:53: error: `is_sigma1_space' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:53: error: `space_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:53: error: `space' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:54: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:58: warning: `is_roottask_space' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:58: error: `is_roottask_space' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:58: error: `space_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:58: error: `space' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:59: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:63: warning: `is_privileged_space' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:63: error: `is_privileged_space' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:63: error: `space_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:63: error: `space' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:64: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:71: error: `space_t' has not been declared
/root/Orion/kernel/src/api/v4/space.h: In function `bool is_mappable(void*)':
/root/Orion/kernel/src/api/v4/space.h:74: error: `is_user_area' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:75: error: `get_kip_page_area' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:76: error: `get_utcb_page_area' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:74: warning: unused variable 'is_user_area'
/root/Orion/kernel/src/api/v4/space.h:75: warning: unused variable 'get_kip_page_area'
/root/Orion/kernel/src/api/v4/space.h:76: warning: unused variable 'get_utcb_page_area'
/root/Orion/kernel/src/api/v4/space.h: At global scope:
/root/Orion/kernel/src/api/v4/space.h:82: error: `space_t' has not been declared
/root/Orion/kernel/src/api/v4/space.h:82: warning: `is_mappable' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:82: error: `is_mappable' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:82: error: `bool is_mappable' redeclared as different kind of symbol
/root/Orion/kernel/src/api/v4/space.h:72: error: previous declaration of `bool is_mappable(void*)'
/root/Orion/kernel/src/api/v4/space.h:82: error: declaration of `bool is_mappable'
/root/Orion/kernel/src/api/v4/space.h:72: error: conflicts with previous declaration `bool is_mappable(void*)'
/root/Orion/kernel/src/api/v4/space.h:82: error: `fpage_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:83: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:93: error: `space_t' has not been declared
/root/Orion/kernel/src/api/v4/space.h:93: warning: `is_user_area' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:93: error: `is_user_area' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:93: error: `fpage_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:94: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:100: error: `space_t' has not been declared
/root/Orion/kernel/src/api/v4/space.h: In function `bool is_initialized()':
/root/Orion/kernel/src/api/v4/space.h:102: error: `get_kip_page_area' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:102: warning: unused variable 'get_kip_page_area'
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h: At global scope:
/root/Orion/kernel/src/api/v4/tcb.h:131: error: `struct space_t::access_e' has not been declared
/root/Orion/kernel/src/api/v4/tcb.h:131: error: ISO C++ forbids declaration of `access' with no type
/root/Orion/kernel/src/api/v4/tcb.h: In member function `tcb_t* tcb_t::get_partner_tcb()':
/root/Orion/kernel/src/api/v4/tcb.h:425: error: invalid use of undefined type `struct space_t'
/root/Orion/kernel/src/api/v4/tcb.h:54: error: forward declaration of `struct space_t'
/root/Orion/kernel/src/api/v4/tcb.h: In member function `void tcb_t::clear_notify_bits()':
/root/Orion/kernel/src/api/v4/tcb.h:570: error: 'class utcb_t' has no member named 'notify_bits'
/root/Orion/kernel/src/api/v4/tcb.h: In member function `void tcb_t::add_notify_bits(word_t)':
/root/Orion/kernel/src/api/v4/tcb.h:578: error: 'class utcb_t' has no member named 'notify_bits'
/root/Orion/kernel/src/api/v4/tcb.h: In member function `void tcb_t::sub_notify_bits(word_t)':
/root/Orion/kernel/src/api/v4/tcb.h:586: error: 'class utcb_t' has no member named 'notify_bits'
/root/Orion/kernel/src/api/v4/tcb.h: In member function `word_t tcb_t::get_notify_bits()':
/root/Orion/kernel/src/api/v4/tcb.h:594: error: 'class utcb_t' has no member named 'notify_bits'
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/syscalls.h: At global scope:
/root/Orion/kernel/src/api/v4/syscalls.h:53: error: `timeout_t' has not been declared
/root/Orion/kernel/src/api/v4/syscalls.h:53: error: ISO C++ forbids declaration of `timeout' with no type
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/syscalls.h:90:40: macro "SYS_EXCHANGE_REGISTERS" requires 8 arguments, but only 7 given
/root/Orion/kernel/src/api/v4/syscalls.h:88: error: expected constructor, destructor, or type conversion before ';' token
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:113: error: prototype for `void tcb_t::allocate()' does not match any in class `tcb_t'
/root/Orion/kernel/src/api/v4/tcb.h:216: error: candidate is: bool tcb_t::allocate()
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:113: error: `void tcb_t::allocate()' and `bool tcb_t::allocate()' cannot be overloaded
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In function `void initial_switch_to(tcb_t*)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:224: error: `get_kernel_space' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:224: warning: unused variable 'get_kernel_space'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function `void tcb_t::switch_to(tcb_t*)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271: error: `get_kernel_space' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271: warning: unused variable 'get_kernel_space'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273: error: `get_kernel_space' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273: warning: unused variable 'get_kernel_space'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:277: error: invalid use of undefined type `struct space_t'
/root/Orion/kernel/src/api/v4/tcb.h:54: error: forward declaration of `struct space_t'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:570: error: no `void tcb_t::copy_saved_regs(tcb_t*)' member function declared in class `tcb_t'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:602: error: no `void tcb_t::copy_volatile_regs(tcb_t*)' member function declared in class `tcb_t'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:735: error: `timeout_t' has not been declared
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:736: error: ISO C++ forbids declaration of `timeout' with no type
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:736: error: prototype for `msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)' does not match any in class `tcb_t'
/root/Orion/kernel/src/api/v4/tcb.h:130: error: candidate is: msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t)
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:749: error: invalid use of undefined type `struct space_t'
/root/Orion/kernel/src/api/v4/tcb.h:54: error: forward declaration of `struct space_t'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function `void space_t::add_tcb(tcb_t*)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:750: error: `x' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:752: error: `spaces_list_lock' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:764: error: invalid use of undefined type `struct space_t'
/root/Orion/kernel/src/api/v4/tcb.h:54: error: forward declaration of `struct space_t'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function `bool space_t::remove_tcb(tcb_t*)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:765: error: `x' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:765: warning: unused variable 'x'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:766: error: `x' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:768: error: `spaces_list_lock' was not declared in this scope
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h: In member function `bool tcb_t::is_local_cpu()':
/root/Orion/kernel/src/api/v4/tcb.h:739: error: `get_current_cpu' was not declared in this scope
/root/Orion/kernel/src/api/v4/tcb.h:739: warning: unused variable 'get_current_cpu'
===> src/generic/tracebuffer.cc
cd src/generic/ && gcc34 -nostdinc -I/root/Orion/kernel/p2/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/3.4.6/include/ -Upowerpc64 -Upower4 -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4 -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p2/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/tracebuffer.cc
In file included from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/space.h:41: error: expected constructor, destructor, or type conversion before '*' token
/root/Orion/kernel/src/api/v4/space.h:42: error: variable or field `free_space' declared void
/root/Orion/kernel/src/api/v4/space.h:42: error: `space_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:42: error: `space' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:44: error: expected initializer before '*' token
/root/Orion/kernel/src/api/v4/space.h:45: error: expected initializer before '*' token
/root/Orion/kernel/src/api/v4/space.h:46: error: expected initializer before '*' token
/root/Orion/kernel/src/api/v4/space.h:48: warning: `is_sigma0_space' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:48: error: `is_sigma0_space' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:48: error: `space_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:48: error: `space' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:49: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:53: warning: `is_sigma1_space' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:53: error: `is_sigma1_space' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:53: error: `space_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:53: error: `space' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:54: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:58: warning: `is_roottask_space' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:58: error: `is_roottask_space' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:58: error: `space_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:58: error: `space' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:59: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:63: warning: `is_privileged_space' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:63: error: `is_privileged_space' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:63: error: `space_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:63: error: `space' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:64: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:71: error: `space_t' has not been declared
/root/Orion/kernel/src/api/v4/space.h: In function `bool is_mappable(void*)':
/root/Orion/kernel/src/api/v4/space.h:74: error: `is_user_area' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:75: error: `get_kip_page_area' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:76: error: `get_utcb_page_area' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:74: warning: unused variable 'is_user_area'
/root/Orion/kernel/src/api/v4/space.h:75: warning: unused variable 'get_kip_page_area'
/root/Orion/kernel/src/api/v4/space.h:76: warning: unused variable 'get_utcb_page_area'
/root/Orion/kernel/src/api/v4/space.h: At global scope:
/root/Orion/kernel/src/api/v4/space.h:82: error: `space_t' has not been declared
/root/Orion/kernel/src/api/v4/space.h:82: warning: `is_mappable' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:82: error: `is_mappable' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:82: error: `bool is_mappable' redeclared as different kind of symbol
/root/Orion/kernel/src/api/v4/space.h:72: error: previous declaration of `bool is_mappable(void*)'
/root/Orion/kernel/src/api/v4/space.h:82: error: declaration of `bool is_mappable'
/root/Orion/kernel/src/api/v4/space.h:72: error: conflicts with previous declaration `bool is_mappable(void*)'
/root/Orion/kernel/src/api/v4/space.h:82: error: `fpage_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:83: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:93: error: `space_t' has not been declared
/root/Orion/kernel/src/api/v4/space.h:93: warning: `is_user_area' initialized and declared `extern'
/root/Orion/kernel/src/api/v4/space.h:93: error: `is_user_area' declared as an `inline' variable
/root/Orion/kernel/src/api/v4/space.h:93: error: `fpage_t' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:94: error: expected `,' or `;' before '{' token
/root/Orion/kernel/src/api/v4/space.h:100: error: `space_t' has not been declared
/root/Orion/kernel/src/api/v4/space.h: In function `bool is_initialized()':
/root/Orion/kernel/src/api/v4/space.h:102: error: `get_kip_page_area' was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:102: warning: unused variable 'get_kip_page_area'
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: At global scope:
/root/Orion/kernel/src/api/v4/tcb.h:131: error: `struct space_t::access_e' has not been declared
/root/Orion/kernel/src/api/v4/tcb.h:131: error: ISO C++ forbids declaration of `access' with no type
/root/Orion/kernel/src/api/v4/tcb.h: In member function `tcb_t* tcb_t::get_partner_tcb()':
/root/Orion/kernel/src/api/v4/tcb.h:425: error: invalid use of undefined type `struct space_t'
/root/Orion/kernel/src/api/v4/tcb.h:54: error: forward declaration of `struct space_t'
/root/Orion/kernel/src/api/v4/tcb.h: In member function `void tcb_t::clear_notify_bits()':
/root/Orion/kernel/src/api/v4/tcb.h:570: error: 'class utcb_t' has no member named 'notify_bits'
/root/Orion/kernel/src/api/v4/tcb.h: In member function `void tcb_t::add_notify_bits(word_t)':
/root/Orion/kernel/src/api/v4/tcb.h:578: error: 'class utcb_t' has no member named 'notify_bits'
/root/Orion/kernel/src/api/v4/tcb.h: In member function `void tcb_t::sub_notify_bits(word_t)':
/root/Orion/kernel/src/api/v4/tcb.h:586: error: 'class utcb_t' has no member named 'notify_bits'
/root/Orion/kernel/src/api/v4/tcb.h: In member function `word_t tcb_t::get_notify_bits()':
/root/Orion/kernel/src/api/v4/tcb.h:594: error: 'class utcb_t' has no member named 'notify_bits'
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h: At global scope:
/root/Orion/kernel/src/api/v4/syscalls.h:53: error: `timeout_t' has not been declared
/root/Orion/kernel/src/api/v4/syscalls.h:53: error: ISO C++ forbids declaration of `timeout' with no type
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:90:40: macro "SYS_EXCHANGE_REGISTERS" requires 8 arguments, but only 7 given
/root/Orion/kernel/src/api/v4/syscalls.h:88: error: expected constructor, destructor, or type conversion before ';' token
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:113: error: prototype for `void tcb_t::allocate()' does not match any in class `tcb_t'
/root/Orion/kernel/src/api/v4/tcb.h:216: error: candidate is: bool tcb_t::allocate()
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:113: error: `void tcb_t::allocate()' and `bool tcb_t::allocate()' cannot be overloaded
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In function `void initial_switch_to(tcb_t*)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:224: error: `get_kernel_space' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:224: warning: unused variable 'get_kernel_space'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function `void tcb_t::switch_to(tcb_t*)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271: error: `get_kernel_space' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271: warning: unused variable 'get_kernel_space'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273: error: `get_kernel_space' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273: warning: unused variable 'get_kernel_space'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:277: error: invalid use of undefined type `struct space_t'
/root/Orion/kernel/src/api/v4/tcb.h:54: error: forward declaration of `struct space_t'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:570: error: no `void tcb_t::copy_saved_regs(tcb_t*)' member function declared in class `tcb_t'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:602: error: no `void tcb_t::copy_volatile_regs(tcb_t*)' member function declared in class `tcb_t'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:735: error: `timeout_t' has not been declared
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:736: error: ISO C++ forbids declaration of `timeout' with no type
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:736: error: prototype for `msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)' does not match any in class `tcb_t'
/root/Orion/kernel/src/api/v4/tcb.h:130: error: candidate is: msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t)
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:749: error: invalid use of undefined type `struct space_t'
/root/Orion/kernel/src/api/v4/tcb.h:54: error: forward declaration of `struct space_t'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function `void space_t::add_tcb(tcb_t*)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:750: error: `x' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:752: error: `spaces_list_lock' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:764: error: invalid use of undefined type `struct space_t'
/root/Orion/kernel/src/api/v4/tcb.h:54: error: forward declaration of `struct space_t'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function `bool space_t::remove_tcb(tcb_t*)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:765: error: `x' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:765: warning: unused variable 'x'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:766: error: `x' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:768: error: `spaces_list_lock' was not declared in this scope
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: In member function `bool tcb_t::is_local_cpu()':
/root/Orion/kernel/src/api/v4/tcb.h:739: error: `get_current_cpu' was not declared in this scope
/root/Orion/kernel/src/api/v4/tcb.h:739: warning: unused variable 'get_current_cpu'
make[1]: *** [/root/Orion/kernel/Mk/Makeconf:208: src/generic/tracebuffer.o] Error 1
make[1]: Leaving directory '/root/Orion/kernel/p2'
make: *** [Makefile:38: all] Error 2
[root@fedora28 p2]# 
vmlemon commented 5 years ago

Another build attempt:

[root@fedora28 kernel]# CC=gcc34 make BUILDDIR=/root/Orion/kernel/p3

Setting up build directory /root/Orion/kernel/p3 ...
done.

[root@fedora28 kernel]# cd p3
[root@fedora28 p3]# ls
config  include  Makeconf.local  Makefile
[root@fedora28 p3]# make menuconfig
make[1]: Entering directory '/root/Orion/kernel/p3'
make[2]: Entering directory '/root/Orion/kernel/p3/config'
Compiling rules, please wait......(0.07 sec) Done.
Rewriting Makeconf.local ...
make[2]: Leaving directory '/root/Orion/kernel/p3/config'
make[1]: Leaving directory '/root/Orion/kernel/p3'
[root@fedora28 p3]# make
make[1]: Entering directory '/root/Orion/kernel/p3'
===> Building dependencies
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/syscalls.h:90:40: error: macro "SYS_EXCHANGE_REGISTERS" requires 8 arguments, but only 7 given
    word_t uhandle, threadid_t pager_tid);
                                        ^
In file included from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/space.h:41:1: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 space_t * allocate_space();
 ^~~~~~~
 size_t
/root/Orion/kernel/src/api/v4/space.h:42:17: error: variable or field ‘free_space’ declared void
 void free_space(space_t * space);
                 ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:42:17: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:42:17: note: suggested alternative: ‘size_t’
 void free_space(space_t * space);
                 ^~~~~~~
                 size_t
/root/Orion/kernel/src/api/v4/space.h:42:27: error: ‘space’ was not declared in this scope
 void free_space(space_t * space);
                           ^~~~~
/root/Orion/kernel/src/api/v4/space.h:44:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * sigma0_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:45:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * sigma1_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:46:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * roottask_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:48:29: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_sigma0_space(space_t * space)
                             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:48:29: warning: ‘is_sigma0_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:48:29: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:48:29: note: suggested alternative: ‘size_t’
 INLINE bool is_sigma0_space(space_t * space)
                             ^~~~~~~
                             size_t
/root/Orion/kernel/src/api/v4/space.h:48:39: error: ‘space’ was not declared in this scope
 INLINE bool is_sigma0_space(space_t * space)
                                       ^~~~~
/root/Orion/kernel/src/api/v4/space.h:53:29: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_sigma1_space(space_t * space)
                             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:53:29: warning: ‘is_sigma1_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:53:29: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:53:29: note: suggested alternative: ‘size_t’
 INLINE bool is_sigma1_space(space_t * space)
                             ^~~~~~~
                             size_t
/root/Orion/kernel/src/api/v4/space.h:53:39: error: ‘space’ was not declared in this scope
 INLINE bool is_sigma1_space(space_t * space)
                                       ^~~~~
/root/Orion/kernel/src/api/v4/space.h:58:31: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_roottask_space(space_t * space)
                               ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:58:31: warning: ‘is_roottask_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:58:31: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:58:31: note: suggested alternative: ‘size_t’
 INLINE bool is_roottask_space(space_t * space)
                               ^~~~~~~
                               size_t
/root/Orion/kernel/src/api/v4/space.h:58:41: error: ‘space’ was not declared in this scope
 INLINE bool is_roottask_space(space_t * space)
                                         ^~~~~
/root/Orion/kernel/src/api/v4/space.h:63:33: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_privileged_space(space_t * space)
                                 ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:63:33: warning: ‘is_privileged_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:63:33: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:63:33: note: suggested alternative: ‘size_t’
 INLINE bool is_privileged_space(space_t * space)
                                 ^~~~~~~
                                 size_t
/root/Orion/kernel/src/api/v4/space.h:63:43: error: ‘space’ was not declared in this scope
 INLINE bool is_privileged_space(space_t * space)
                                           ^~~~~
/root/Orion/kernel/src/api/v4/space.h:71:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_mappable(addr_t addr)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h: In function ‘bool is_mappable(addr_t)’:
/root/Orion/kernel/src/api/v4/space.h:74:13: error: ‘is_user_area’ was not declared in this scope
     return (is_user_area(addr) &&
             ^~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h:75:4: error: ‘get_kip_page_area’ was not declared in this scope
  (!get_kip_page_area().is_addr_in_fpage(addr)) &&
    ^~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h:76:4: error: ‘get_utcb_page_area’ was not declared in this scope
  (!get_utcb_page_area().is_addr_in_fpage(addr)));
    ^~~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h: At global scope:
/root/Orion/kernel/src/api/v4/space.h:82:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_mappable(fpage_t fpage)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool space_t::is_mappable(fpage_t fpage)
                                  ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: warning: ‘is_mappable’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:82:34: error: ‘bool is_mappable’ redeclared as different kind of symbol
/root/Orion/kernel/src/api/v4/space.h:71:13: note: previous declaration ‘bool is_mappable(addr_t)’
 INLINE bool space_t::is_mappable(addr_t addr)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: error: ‘fpage_t’ was not declared in this scope
 INLINE bool space_t::is_mappable(fpage_t fpage)
                                  ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_user_area(fpage_t fpage)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:35: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool space_t::is_user_area(fpage_t fpage)
                                   ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:35: warning: ‘is_user_area’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:93:35: error: ‘fpage_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:100:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_initialized()
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h: In function ‘bool is_initialized()’:
/root/Orion/kernel/src/api/v4/space.h:102:13: error: ‘get_kip_page_area’ was not declared in this scope
     return !get_kip_page_area().is_nil_fpage();
             ^~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/kernelinterface.h:37,
                 from /root/Orion/kernel/src/api/v4/thread.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:44,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/memdesc.h: In member function ‘void memdesc_t::set(memdesc_t::type_e, word_t, bool, addr_t, addr_t)’:
/root/Orion/kernel/src/api/v4/memdesc.h:118:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _type = type;
              ^~~~
/root/Orion/kernel/src/api/v4/memdesc.h:119:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _t    = t;
              ^
/root/Orion/kernel/src/api/v4/memdesc.h:121:29: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _low  = ((word_t) low) >> 10;
              ~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/memdesc.h:122:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _high = ((word_t) high) >> 10;
              ~~~~~~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/api/v4/thread.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:44,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_user_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:169:52: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_user_base(word_t base)  { user_base = base; }
                                                    ^~~~
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_system_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:170:56: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_system_base(word_t base)  { system_base = base; }
                                                        ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:44,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::irqthread(word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:71:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = irq;
                            ^~~
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::threadid(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:78:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.version = version;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:79:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = threadno;
                            ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h: In member function ‘void threadid_t::set_global_id(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:126:23: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.threadno = threadno;
                       ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:127:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.version = version;
                      ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:46,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/fpage.h: In member function ‘void fpage_t::set(word_t, word_t, bool, bool, bool)’:
/root/Orion/kernel/src/api/v4/fpage.h:69:60: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      x.base = (base & (~0 >> (L4_FPAGE_BASE_BITS - size))) >> 10;
               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/fpage.h:70:15: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      x.size = size;
               ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:47,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void msg_tag_t::set(word_t, word_t, word_t, bool, bool)’:
/root/Orion/kernel/src/api/v4/ipc.h:82:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.typed = typed;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h:83:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.untyped = untyped;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/ipc.h:84:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:48’ may change value [-Wconversion]
      this->send.label = label;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void acceptor_t::set_rcv_window(fpage_t)’:
/root/Orion/kernel/src/api/v4/ipc.h:232:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:60’ may change value [-Wconversion]
  { x.rcv_window = (fpage.raw >> 4); };
                   ~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h: At global scope:
/root/Orion/kernel/src/api/v4/tcb.h:131:62: error: ‘space_t::access_e’ has not been declared
     void send_pagefault_ipc(addr_t addr, addr_t ip, space_t::access_e access);
                                                              ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘tcb_t* tcb_t::get_partner_tcb()’:
/root/Orion/kernel/src/api/v4/tcb.h:425:29: error: invalid use of incomplete type ‘class space_t’
     return this->get_space()->get_tcb(partner);
                             ^~
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::clear_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:570:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits = 0;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::add_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:578:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits |= bits;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::sub_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:586:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits &= ~(bits);
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘word_t tcb_t::get_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:594:24: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
     return get_utcb()->notify_bits;
                        ^~~~~~~~~~~
                        notify_mask
In file included from /root/Orion/kernel/src/arch/powerpc64/debug.h:36,
                 from /root/Orion/kernel/src/debug.h:75,
                 from /root/Orion/kernel/src/api/v4/tcb.h:36,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/syscalls.h: At global scope:
/root/Orion/kernel/src/api/v4/syscalls.h:53:50: error: ‘timeout_t’ has not been declared
 SYS_IPC (threadid_t to_tid, threadid_t from_tid, timeout_t timeout);
                                                  ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/syscalls.h:75:21: note: in definition of macro ‘SYS_IPC’
  sys_ipc (to, from, timeout)
                     ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/syscalls.h:88:1: error: ‘SYS_EXCHANGE_REGISTERS’ does not name a type
 SYS_EXCHANGE_REGISTERS (threadid_t dest_tid, word_t control,
 ^~~~~~~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:112:13: error: no declaration matches ‘void tcb_t::allocate()’
 INLINE void tcb_t::allocate()
             ^~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:216:10: note: candidate is: ‘bool tcb_t::allocate()’
     bool allocate();
          ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In function ‘void initial_switch_to(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:224:18: error: ‘get_kernel_space’ was not declared in this scope
     word_t asr = get_kernel_space()->get_vsid_asid();
                  ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function ‘void tcb_t::switch_to(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271:10: error: ‘get_kernel_space’ was not declared in this scope
  space = get_kernel_space();
          ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271:10: note: suggested alternative: ‘kernel_stack’
  space = get_kernel_space();
          ^~~~~~~~~~~~~~~~
          kernel_stack
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273:14: error: ‘get_kernel_space’ was not declared in this scope
  currspace = get_kernel_space();
              ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273:14: note: suggested alternative: ‘kernel_stack’
  currspace = get_kernel_space();
              ^~~~~~~~~~~~~~~~
              kernel_stack
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:277:23: error: invalid use of incomplete type ‘class space_t’
     word_t asr = space->get_vsid_asid();
                       ^~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: error: no declaration matches ‘void tcb_t::copy_saved_regs(tcb_t*)’
 INLINE void tcb_t::copy_saved_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: note: no functions named ‘void tcb_t::copy_saved_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: error: no declaration matches ‘void tcb_t::copy_volatile_regs(tcb_t*)’
 INLINE void tcb_t::copy_volatile_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: note: no functions named ‘void tcb_t::copy_volatile_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:735:33: error: ‘timeout_t’ has not been declared
                                 timeout_t timeout)
                                 ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:734:18: error: no declaration matches ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)’
 INLINE msg_tag_t tcb_t::do_ipc (threadid_t to_tid, threadid_t from_tid,
                  ^~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:130:15: note: candidate is: ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t)’
     msg_tag_t do_ipc(threadid_t to_tid, threadid_t from_tid);
               ^~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:748:41: error: invalid use of incomplete type ‘class space_t’
 inline void space_t::add_tcb(tcb_t * tcb)
                                         ^
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:763:44: error: invalid use of incomplete type ‘class space_t’
 inline bool space_t::remove_tcb(tcb_t * tcb)
                                            ^
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:37:
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘bool tcb_t::is_local_cpu()’:
/root/Orion/kernel/src/api/v4/tcb.h:739:13: error: ‘get_current_cpu’ was not declared in this scope
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:739:13: note: suggested alternative: ‘get_current_tcb’
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
             get_current_tcb
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:34:
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc: At global scope:
/root/Orion/kernel/src/generic/mkasmsym.h:40:55: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_sign_t { char x[32*((value) < 0 ? 1 : 2)]; };  \
                                                       ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:42:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b0_t { char x[32*((__ABSVALUE(value) >> 0) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:44:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b1_t { char x[32*((__ABSVALUE(value) >> 8) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:46:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b2_t { char x[32*((__ABSVALUE(value) >> 16) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:48:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b3_t { char x[32*((__ABSVALUE(value) >> 24) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:50:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b4_t { char x[32*((__ABSVALUE(value) >> 32) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:52:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b5_t { char x[32*((__ABSVALUE(value) >> 40) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:54:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b6_t { char x[32*((__ABSVALUE(value) >> 48) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:56:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b7_t { char x[32*((__ABSVALUE(value) >> 56) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:50:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MR, (((word_t) &UTCB->mr[0]) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:40:55: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_sign_t { char x[32*((value) < 0 ? 1 : 2)]; };  \
                                                       ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:42:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b0_t { char x[32*((__ABSVALUE(value) >> 0) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:44:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b1_t { char x[32*((__ABSVALUE(value) >> 8) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:46:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b2_t { char x[32*((__ABSVALUE(value) >> 16) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:48:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b3_t { char x[32*((__ABSVALUE(value) >> 24) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:50:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b4_t { char x[32*((__ABSVALUE(value) >> 32) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:52:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b5_t { char x[32*((__ABSVALUE(value) >> 40) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:54:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b6_t { char x[32*((__ABSVALUE(value) >> 48) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:56:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b7_t { char x[32*((__ABSVALUE(value) >> 56) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:51:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_EXCEPTION_HANDLER, (((word_t) &UTCB->exception_handler) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:40:55: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_sign_t { char x[32*((value) < 0 ? 1 : 2)]; };  \
                                                       ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:42:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b0_t { char x[32*((__ABSVALUE(value) >> 0) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:44:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b1_t { char x[32*((__ABSVALUE(value) >> 8) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:46:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b2_t { char x[32*((__ABSVALUE(value) >> 16) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:48:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b3_t { char x[32*((__ABSVALUE(value) >> 24) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:50:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b4_t { char x[32*((__ABSVALUE(value) >> 32) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:52:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b5_t { char x[32*((__ABSVALUE(value) >> 40) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:54:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b6_t { char x[32*((__ABSVALUE(value) >> 48) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:56:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b7_t { char x[32*((__ABSVALUE(value) >> 56) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:52:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( OFS_UTCB_MY_GLOBAL_ID, (((word_t) &UTCB->my_global_id) - ((word_t) UTCB)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:40:55: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_sign_t { char x[32*((value) < 0 ? 1 : 2)]; };  \
                                                       ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:42:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b0_t { char x[32*((__ABSVALUE(value) >> 0) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:44:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b1_t { char x[32*((__ABSVALUE(value) >> 8) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:46:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b2_t { char x[32*((__ABSVALUE(value) >> 16) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:48:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b3_t { char x[32*((__ABSVALUE(value) >> 24) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:50:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b4_t { char x[32*((__ABSVALUE(value) >> 32) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:52:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b5_t { char x[32*((__ABSVALUE(value) >> 40) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:54:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b6_t { char x[32*((__ABSVALUE(value) >> 48) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:56:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b7_t { char x[32*((__ABSVALUE(value) >> 56) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:58:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_ENTRY, (((word_t) &RTAS->entry) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:40:55: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_sign_t { char x[32*((value) < 0 ? 1 : 2)]; };  \
                                                       ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:42:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b0_t { char x[32*((__ABSVALUE(value) >> 0) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:44:65: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b1_t { char x[32*((__ABSVALUE(value) >> 8) & 0xff)]; }; \
                                                                 ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:46:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b2_t { char x[32*((__ABSVALUE(value) >> 16) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:48:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b3_t { char x[32*((__ABSVALUE(value) >> 24) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:50:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b4_t { char x[32*((__ABSVALUE(value) >> 32) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:52:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b5_t { char x[32*((__ABSVALUE(value) >> 40) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:54:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b6_t { char x[32*((__ABSVALUE(value) >> 48) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
/root/Orion/kernel/src/generic/mkasmsym.h:56:66: error: array bound is not an integer constant before ‘]’ token
 struct sym ##_b7_t { char x[32*((__ABSVALUE(value) >> 56) & 0xff)]; }; \
                                                                  ^
/root/Orion/kernel/src/glue/v4-powerpc64/asmsyms.cc:59:1: note: in expansion of macro ‘MKASMSYM’
 MKASMSYM( RTAS_BASE, (((word_t) &RTAS->base) - ((word_t) RTAS)));
 ^~~~~~~~
===> src/generic/lib.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/lib.cc
/root/Orion/kernel/src/generic/lib.cc: In function ‘void* memset(void*, unsigned int, unsigned int)’:
/root/Orion/kernel/src/generic/lib.cc:56:9: warning: conversion from ‘unsigned int’ to ‘u8_t’ {aka ‘unsigned char’} may change value [-Wconversion]
  *s++ = c;
         ^
===> src/generic/kmemory.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/kmemory.cc
===> src/generic/traceids.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/traceids.cc
===> src/generic/tracebuffer.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/tracebuffer.cc
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:90:40: error: macro "SYS_EXCHANGE_REGISTERS" requires 8 arguments, but only 7 given
    word_t uhandle, threadid_t pager_tid);
                                        ^
In file included from /root/Orion/kernel/src/api/v4/kernelinterface.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:86:
/root/Orion/kernel/src/api/v4/memdesc.h: In member function ‘void memdesc_t::set(memdesc_t::type_e, word_t, bool, addr_t, addr_t)’:
/root/Orion/kernel/src/api/v4/memdesc.h:118:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _type = type;
              ^~~~
/root/Orion/kernel/src/api/v4/memdesc.h:119:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _t    = t;
              ^
/root/Orion/kernel/src/api/v4/memdesc.h:121:29: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _low  = ((word_t) low) >> 10;
              ~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/memdesc.h:122:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _high = ((word_t) high) >> 10;
              ~~~~~~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/generic/tracebuffer.cc:86:
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_user_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:169:52: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_user_base(word_t base)  { user_base = base; }
                                                    ^~~~
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_system_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:170:56: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_system_base(word_t base)  { system_base = base; }
                                                        ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/space.h: At global scope:
/root/Orion/kernel/src/api/v4/space.h:41:1: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 space_t * allocate_space();
 ^~~~~~~
 size_t
/root/Orion/kernel/src/api/v4/space.h:42:17: error: variable or field ‘free_space’ declared void
 void free_space(space_t * space);
                 ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:42:17: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:42:17: note: suggested alternative: ‘size_t’
 void free_space(space_t * space);
                 ^~~~~~~
                 size_t
/root/Orion/kernel/src/api/v4/space.h:42:27: error: ‘space’ was not declared in this scope
 void free_space(space_t * space);
                           ^~~~~
/root/Orion/kernel/src/api/v4/space.h:44:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * sigma0_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:45:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * sigma1_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:46:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * roottask_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:48:29: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_sigma0_space(space_t * space)
                             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:48:29: warning: ‘is_sigma0_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:48:29: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:48:29: note: suggested alternative: ‘size_t’
 INLINE bool is_sigma0_space(space_t * space)
                             ^~~~~~~
                             size_t
/root/Orion/kernel/src/api/v4/space.h:48:39: error: ‘space’ was not declared in this scope
 INLINE bool is_sigma0_space(space_t * space)
                                       ^~~~~
/root/Orion/kernel/src/api/v4/space.h:53:29: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_sigma1_space(space_t * space)
                             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:53:29: warning: ‘is_sigma1_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:53:29: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:53:29: note: suggested alternative: ‘size_t’
 INLINE bool is_sigma1_space(space_t * space)
                             ^~~~~~~
                             size_t
/root/Orion/kernel/src/api/v4/space.h:53:39: error: ‘space’ was not declared in this scope
 INLINE bool is_sigma1_space(space_t * space)
                                       ^~~~~
/root/Orion/kernel/src/api/v4/space.h:58:31: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_roottask_space(space_t * space)
                               ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:58:31: warning: ‘is_roottask_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:58:31: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:58:31: note: suggested alternative: ‘size_t’
 INLINE bool is_roottask_space(space_t * space)
                               ^~~~~~~
                               size_t
/root/Orion/kernel/src/api/v4/space.h:58:41: error: ‘space’ was not declared in this scope
 INLINE bool is_roottask_space(space_t * space)
                                         ^~~~~
/root/Orion/kernel/src/api/v4/space.h:63:33: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_privileged_space(space_t * space)
                                 ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:63:33: warning: ‘is_privileged_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:63:33: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:63:33: note: suggested alternative: ‘size_t’
 INLINE bool is_privileged_space(space_t * space)
                                 ^~~~~~~
                                 size_t
/root/Orion/kernel/src/api/v4/space.h:63:43: error: ‘space’ was not declared in this scope
 INLINE bool is_privileged_space(space_t * space)
                                           ^~~~~
/root/Orion/kernel/src/api/v4/space.h:71:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_mappable(addr_t addr)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h: In function ‘bool is_mappable(addr_t)’:
/root/Orion/kernel/src/api/v4/space.h:74:13: error: ‘is_user_area’ was not declared in this scope
     return (is_user_area(addr) &&
             ^~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h:75:4: error: ‘get_kip_page_area’ was not declared in this scope
  (!get_kip_page_area().is_addr_in_fpage(addr)) &&
    ^~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h:76:4: error: ‘get_utcb_page_area’ was not declared in this scope
  (!get_utcb_page_area().is_addr_in_fpage(addr)));
    ^~~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h: At global scope:
/root/Orion/kernel/src/api/v4/space.h:82:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_mappable(fpage_t fpage)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool space_t::is_mappable(fpage_t fpage)
                                  ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: warning: ‘is_mappable’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:82:34: error: ‘bool is_mappable’ redeclared as different kind of symbol
/root/Orion/kernel/src/api/v4/space.h:71:13: note: previous declaration ‘bool is_mappable(addr_t)’
 INLINE bool space_t::is_mappable(addr_t addr)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: error: ‘fpage_t’ was not declared in this scope
 INLINE bool space_t::is_mappable(fpage_t fpage)
                                  ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_user_area(fpage_t fpage)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:35: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool space_t::is_user_area(fpage_t fpage)
                                   ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:35: warning: ‘is_user_area’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:93:35: error: ‘fpage_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:100:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_initialized()
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h: In function ‘bool is_initialized()’:
/root/Orion/kernel/src/api/v4/space.h:102:13: error: ‘get_kip_page_area’ was not declared in this scope
     return !get_kip_page_area().is_nil_fpage();
             ^~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:44,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::irqthread(word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:71:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = irq;
                            ^~~
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::threadid(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:78:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.version = version;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:79:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = threadno;
                            ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h: In member function ‘void threadid_t::set_global_id(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:126:23: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.threadno = threadno;
                       ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:127:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.version = version;
                      ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:46,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/fpage.h: In member function ‘void fpage_t::set(word_t, word_t, bool, bool, bool)’:
/root/Orion/kernel/src/api/v4/fpage.h:69:60: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      x.base = (base & (~0 >> (L4_FPAGE_BASE_BITS - size))) >> 10;
               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/fpage.h:70:15: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      x.size = size;
               ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:47,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void msg_tag_t::set(word_t, word_t, word_t, bool, bool)’:
/root/Orion/kernel/src/api/v4/ipc.h:82:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.typed = typed;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h:83:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.untyped = untyped;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/ipc.h:84:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:48’ may change value [-Wconversion]
      this->send.label = label;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void acceptor_t::set_rcv_window(fpage_t)’:
/root/Orion/kernel/src/api/v4/ipc.h:232:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:60’ may change value [-Wconversion]
  { x.rcv_window = (fpage.raw >> 4); };
                   ~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: At global scope:
/root/Orion/kernel/src/api/v4/tcb.h:131:62: error: ‘space_t::access_e’ has not been declared
     void send_pagefault_ipc(addr_t addr, addr_t ip, space_t::access_e access);
                                                              ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘tcb_t* tcb_t::get_partner_tcb()’:
/root/Orion/kernel/src/api/v4/tcb.h:425:29: error: invalid use of incomplete type ‘class space_t’
     return this->get_space()->get_tcb(partner);
                             ^~
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::clear_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:570:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits = 0;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::add_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:578:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits |= bits;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::sub_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:586:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits &= ~(bits);
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘word_t tcb_t::get_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:594:24: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
     return get_utcb()->notify_bits;
                        ^~~~~~~~~~~
                        notify_mask
In file included from /root/Orion/kernel/src/arch/powerpc64/debug.h:36,
                 from /root/Orion/kernel/src/debug.h:75,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:84:
/root/Orion/kernel/src/api/v4/syscalls.h: At global scope:
/root/Orion/kernel/src/api/v4/syscalls.h:53:50: error: ‘timeout_t’ has not been declared
 SYS_IPC (threadid_t to_tid, threadid_t from_tid, timeout_t timeout);
                                                  ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/syscalls.h:75:21: note: in definition of macro ‘SYS_IPC’
  sys_ipc (to, from, timeout)
                     ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:88:1: error: ‘SYS_EXCHANGE_REGISTERS’ does not name a type
 SYS_EXCHANGE_REGISTERS (threadid_t dest_tid, word_t control,
 ^~~~~~~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:112:13: error: no declaration matches ‘void tcb_t::allocate()’
 INLINE void tcb_t::allocate()
             ^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:216:10: note: candidate is: ‘bool tcb_t::allocate()’
     bool allocate();
          ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In function ‘void initial_switch_to(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:224:18: error: ‘get_kernel_space’ was not declared in this scope
     word_t asr = get_kernel_space()->get_vsid_asid();
                  ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function ‘void tcb_t::switch_to(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271:10: error: ‘get_kernel_space’ was not declared in this scope
  space = get_kernel_space();
          ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271:10: note: suggested alternative: ‘kernel_stack’
  space = get_kernel_space();
          ^~~~~~~~~~~~~~~~
          kernel_stack
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273:14: error: ‘get_kernel_space’ was not declared in this scope
  currspace = get_kernel_space();
              ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273:14: note: suggested alternative: ‘kernel_stack’
  currspace = get_kernel_space();
              ^~~~~~~~~~~~~~~~
              kernel_stack
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:277:23: error: invalid use of incomplete type ‘class space_t’
     word_t asr = space->get_vsid_asid();
                       ^~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: error: no declaration matches ‘void tcb_t::copy_saved_regs(tcb_t*)’
 INLINE void tcb_t::copy_saved_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: note: no functions named ‘void tcb_t::copy_saved_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: error: no declaration matches ‘void tcb_t::copy_volatile_regs(tcb_t*)’
 INLINE void tcb_t::copy_volatile_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: note: no functions named ‘void tcb_t::copy_volatile_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:735:33: error: ‘timeout_t’ has not been declared
                                 timeout_t timeout)
                                 ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:734:18: error: no declaration matches ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)’
 INLINE msg_tag_t tcb_t::do_ipc (threadid_t to_tid, threadid_t from_tid,
                  ^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:130:15: note: candidate is: ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t)’
     msg_tag_t do_ipc(threadid_t to_tid, threadid_t from_tid);
               ^~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:748:41: error: invalid use of incomplete type ‘class space_t’
 inline void space_t::add_tcb(tcb_t * tcb)
                                         ^
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:763:44: error: invalid use of incomplete type ‘class space_t’
 inline bool space_t::remove_tcb(tcb_t * tcb)
                                            ^
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘bool tcb_t::is_local_cpu()’:
/root/Orion/kernel/src/api/v4/tcb.h:739:13: error: ‘get_current_cpu’ was not declared in this scope
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:739:13: note: suggested alternative: ‘get_current_tcb’
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
             get_current_tcb
In file included from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/schedule.h: At global scope:
/root/Orion/kernel/src/api/v4/schedule.h:198:10: error: extra qualification ‘scheduler_t::’ on member ‘switch_highest’ [-fpermissive]
     void scheduler_t::switch_highest(tcb_t *current, tcb_t * tcb);
          ^~~~~~~~~~~
make[1]: *** [/root/Orion/kernel/Mk/Makeconf:208: src/generic/tracebuffer.o] Error 1
make[1]: Leaving directory '/root/Orion/kernel/p3'
make: *** [Makefile:38: all] Error 2
[root@fedora28 p3]# 
vmlemon commented 5 years ago

Force-copy:

[root@fedora28 p3]# make
make[1]: Entering directory '/root/Orion/kernel/p3'
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c src/glue/v4-powerpc64/asmsyms.cc
gcc: error: src/glue/v4-powerpc64/asmsyms.cc: No such file or directory
gcc: fatal error: no input files
compilation terminated.
===> src/generic/tracebuffer.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/tracebuffer.cc
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:90:40: error: macro "SYS_EXCHANGE_REGISTERS" requires 8 arguments, but only 7 given
    word_t uhandle, threadid_t pager_tid);
                                        ^
In file included from /root/Orion/kernel/src/api/v4/kernelinterface.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:86:
/root/Orion/kernel/src/api/v4/memdesc.h: In member function ‘void memdesc_t::set(memdesc_t::type_e, word_t, bool, addr_t, addr_t)’:
/root/Orion/kernel/src/api/v4/memdesc.h:118:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _type = type;
              ^~~~
/root/Orion/kernel/src/api/v4/memdesc.h:119:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _t    = t;
              ^
/root/Orion/kernel/src/api/v4/memdesc.h:121:29: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _low  = ((word_t) low) >> 10;
              ~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/memdesc.h:122:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _high = ((word_t) high) >> 10;
              ~~~~~~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/generic/tracebuffer.cc:86:
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_user_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:169:52: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_user_base(word_t base)  { user_base = base; }
                                                    ^~~~
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_system_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:170:56: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_system_base(word_t base)  { system_base = base; }
                                                        ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/space.h: At global scope:
/root/Orion/kernel/src/api/v4/space.h:41:1: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 space_t * allocate_space();
 ^~~~~~~
 size_t
/root/Orion/kernel/src/api/v4/space.h:42:17: error: variable or field ‘free_space’ declared void
 void free_space(space_t * space);
                 ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:42:17: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:42:17: note: suggested alternative: ‘size_t’
 void free_space(space_t * space);
                 ^~~~~~~
                 size_t
/root/Orion/kernel/src/api/v4/space.h:42:27: error: ‘space’ was not declared in this scope
 void free_space(space_t * space);
                           ^~~~~
/root/Orion/kernel/src/api/v4/space.h:44:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * sigma0_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:45:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * sigma1_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:46:8: error: ‘space_t’ does not name a type; did you mean ‘size_t’?
 extern space_t * roottask_space;
        ^~~~~~~
        size_t
/root/Orion/kernel/src/api/v4/space.h:48:29: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_sigma0_space(space_t * space)
                             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:48:29: warning: ‘is_sigma0_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:48:29: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:48:29: note: suggested alternative: ‘size_t’
 INLINE bool is_sigma0_space(space_t * space)
                             ^~~~~~~
                             size_t
/root/Orion/kernel/src/api/v4/space.h:48:39: error: ‘space’ was not declared in this scope
 INLINE bool is_sigma0_space(space_t * space)
                                       ^~~~~
/root/Orion/kernel/src/api/v4/space.h:53:29: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_sigma1_space(space_t * space)
                             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:53:29: warning: ‘is_sigma1_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:53:29: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:53:29: note: suggested alternative: ‘size_t’
 INLINE bool is_sigma1_space(space_t * space)
                             ^~~~~~~
                             size_t
/root/Orion/kernel/src/api/v4/space.h:53:39: error: ‘space’ was not declared in this scope
 INLINE bool is_sigma1_space(space_t * space)
                                       ^~~~~
/root/Orion/kernel/src/api/v4/space.h:58:31: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_roottask_space(space_t * space)
                               ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:58:31: warning: ‘is_roottask_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:58:31: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:58:31: note: suggested alternative: ‘size_t’
 INLINE bool is_roottask_space(space_t * space)
                               ^~~~~~~
                               size_t
/root/Orion/kernel/src/api/v4/space.h:58:41: error: ‘space’ was not declared in this scope
 INLINE bool is_roottask_space(space_t * space)
                                         ^~~~~
/root/Orion/kernel/src/api/v4/space.h:63:33: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool is_privileged_space(space_t * space)
                                 ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:63:33: warning: ‘is_privileged_space’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:63:33: error: ‘space_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:63:33: note: suggested alternative: ‘size_t’
 INLINE bool is_privileged_space(space_t * space)
                                 ^~~~~~~
                                 size_t
/root/Orion/kernel/src/api/v4/space.h:63:43: error: ‘space’ was not declared in this scope
 INLINE bool is_privileged_space(space_t * space)
                                           ^~~~~
/root/Orion/kernel/src/api/v4/space.h:71:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_mappable(addr_t addr)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h: In function ‘bool is_mappable(addr_t)’:
/root/Orion/kernel/src/api/v4/space.h:74:13: error: ‘is_user_area’ was not declared in this scope
     return (is_user_area(addr) &&
             ^~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h:75:4: error: ‘get_kip_page_area’ was not declared in this scope
  (!get_kip_page_area().is_addr_in_fpage(addr)) &&
    ^~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h:76:4: error: ‘get_utcb_page_area’ was not declared in this scope
  (!get_utcb_page_area().is_addr_in_fpage(addr)));
    ^~~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/space.h: At global scope:
/root/Orion/kernel/src/api/v4/space.h:82:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_mappable(fpage_t fpage)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool space_t::is_mappable(fpage_t fpage)
                                  ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: warning: ‘is_mappable’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:82:34: error: ‘bool is_mappable’ redeclared as different kind of symbol
/root/Orion/kernel/src/api/v4/space.h:71:13: note: previous declaration ‘bool is_mappable(addr_t)’
 INLINE bool space_t::is_mappable(addr_t addr)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:82:34: error: ‘fpage_t’ was not declared in this scope
 INLINE bool space_t::is_mappable(fpage_t fpage)
                                  ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_user_area(fpage_t fpage)
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:35: warning: inline variables are only available with -std=c++17 or -std=gnu++17
 INLINE bool space_t::is_user_area(fpage_t fpage)
                                   ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h:93:35: warning: ‘is_user_area’ initialized and declared ‘extern’
/root/Orion/kernel/src/api/v4/space.h:93:35: error: ‘fpage_t’ was not declared in this scope
/root/Orion/kernel/src/api/v4/space.h:100:13: error: ‘space_t’ has not been declared
 INLINE bool space_t::is_initialized()
             ^~~~~~~
/root/Orion/kernel/src/api/v4/space.h: In function ‘bool is_initialized()’:
/root/Orion/kernel/src/api/v4/space.h:102:13: error: ‘get_kip_page_area’ was not declared in this scope
     return !get_kip_page_area().is_nil_fpage();
             ^~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:44,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::irqthread(word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:71:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = irq;
                            ^~~
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::threadid(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:78:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.version = version;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:79:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = threadno;
                            ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h: In member function ‘void threadid_t::set_global_id(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:126:23: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.threadno = threadno;
                       ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:127:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.version = version;
                      ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:46,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/fpage.h: In member function ‘void fpage_t::set(word_t, word_t, bool, bool, bool)’:
/root/Orion/kernel/src/api/v4/fpage.h:69:60: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      x.base = (base & (~0 >> (L4_FPAGE_BASE_BITS - size))) >> 10;
               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/fpage.h:70:15: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      x.size = size;
               ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:47,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void msg_tag_t::set(word_t, word_t, word_t, bool, bool)’:
/root/Orion/kernel/src/api/v4/ipc.h:82:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.typed = typed;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h:83:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.untyped = untyped;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/ipc.h:84:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:48’ may change value [-Wconversion]
      this->send.label = label;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void acceptor_t::set_rcv_window(fpage_t)’:
/root/Orion/kernel/src/api/v4/ipc.h:232:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:60’ may change value [-Wconversion]
  { x.rcv_window = (fpage.raw >> 4); };
                   ~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: At global scope:
/root/Orion/kernel/src/api/v4/tcb.h:131:62: error: ‘space_t::access_e’ has not been declared
     void send_pagefault_ipc(addr_t addr, addr_t ip, space_t::access_e access);
                                                              ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘tcb_t* tcb_t::get_partner_tcb()’:
/root/Orion/kernel/src/api/v4/tcb.h:425:29: error: invalid use of incomplete type ‘class space_t’
     return this->get_space()->get_tcb(partner);
                             ^~
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::clear_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:570:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits = 0;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::add_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:578:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits |= bits;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::sub_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:586:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits &= ~(bits);
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘word_t tcb_t::get_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:594:24: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
     return get_utcb()->notify_bits;
                        ^~~~~~~~~~~
                        notify_mask
In file included from /root/Orion/kernel/src/arch/powerpc64/debug.h:36,
                 from /root/Orion/kernel/src/debug.h:75,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:84:
/root/Orion/kernel/src/api/v4/syscalls.h: At global scope:
/root/Orion/kernel/src/api/v4/syscalls.h:53:50: error: ‘timeout_t’ has not been declared
 SYS_IPC (threadid_t to_tid, threadid_t from_tid, timeout_t timeout);
                                                  ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/syscalls.h:75:21: note: in definition of macro ‘SYS_IPC’
  sys_ipc (to, from, timeout)
                     ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:88:1: error: ‘SYS_EXCHANGE_REGISTERS’ does not name a type
 SYS_EXCHANGE_REGISTERS (threadid_t dest_tid, word_t control,
 ^~~~~~~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:112:13: error: no declaration matches ‘void tcb_t::allocate()’
 INLINE void tcb_t::allocate()
             ^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:216:10: note: candidate is: ‘bool tcb_t::allocate()’
     bool allocate();
          ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In function ‘void initial_switch_to(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:224:18: error: ‘get_kernel_space’ was not declared in this scope
     word_t asr = get_kernel_space()->get_vsid_asid();
                  ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function ‘void tcb_t::switch_to(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271:10: error: ‘get_kernel_space’ was not declared in this scope
  space = get_kernel_space();
          ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:271:10: note: suggested alternative: ‘kernel_stack’
  space = get_kernel_space();
          ^~~~~~~~~~~~~~~~
          kernel_stack
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273:14: error: ‘get_kernel_space’ was not declared in this scope
  currspace = get_kernel_space();
              ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:273:14: note: suggested alternative: ‘kernel_stack’
  currspace = get_kernel_space();
              ^~~~~~~~~~~~~~~~
              kernel_stack
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:277:23: error: invalid use of incomplete type ‘class space_t’
     word_t asr = space->get_vsid_asid();
                       ^~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: error: no declaration matches ‘void tcb_t::copy_saved_regs(tcb_t*)’
 INLINE void tcb_t::copy_saved_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: note: no functions named ‘void tcb_t::copy_saved_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: error: no declaration matches ‘void tcb_t::copy_volatile_regs(tcb_t*)’
 INLINE void tcb_t::copy_volatile_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: note: no functions named ‘void tcb_t::copy_volatile_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:735:33: error: ‘timeout_t’ has not been declared
                                 timeout_t timeout)
                                 ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:734:18: error: no declaration matches ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)’
 INLINE msg_tag_t tcb_t::do_ipc (threadid_t to_tid, threadid_t from_tid,
                  ^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:130:15: note: candidate is: ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t)’
     msg_tag_t do_ipc(threadid_t to_tid, threadid_t from_tid);
               ^~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:748:41: error: invalid use of incomplete type ‘class space_t’
 inline void space_t::add_tcb(tcb_t * tcb)
                                         ^
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:763:44: error: invalid use of incomplete type ‘class space_t’
 inline bool space_t::remove_tcb(tcb_t * tcb)
                                            ^
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:54:7: note: forward declaration of ‘class space_t’
 class space_t;
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘bool tcb_t::is_local_cpu()’:
/root/Orion/kernel/src/api/v4/tcb.h:739:13: error: ‘get_current_cpu’ was not declared in this scope
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:739:13: note: suggested alternative: ‘get_current_tcb’
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
             get_current_tcb
In file included from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/schedule.h: At global scope:
/root/Orion/kernel/src/api/v4/schedule.h:198:10: error: extra qualification ‘scheduler_t::’ on member ‘switch_highest’ [-fpermissive]
     void scheduler_t::switch_highest(tcb_t *current, tcb_t * tcb);
          ^~~~~~~~~~~
make[1]: *** [/root/Orion/kernel/Mk/Makeconf:208: src/generic/tracebuffer.o] Error 1
make[1]: Leaving directory '/root/Orion/kernel/p3'
make: *** [Makefile:38: all] Error 2
[root@fedora28 p3]# 
vmlemon commented 5 years ago

If we reinstate https://raw.githubusercontent.com/l4ka/pistachio/8be66aa9b85a774ad1b71dbd3a79c5c745a96273/kernel/src/glue/v4-powerpc64/space.h, we get:

[root@fedora28 p3]# make
make[1]: Entering directory '/root/Orion/kernel/p3'
===> Building dependencies
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c src/glue/v4-powerpc64/asmsyms.cc
gcc: error: src/glue/v4-powerpc64/asmsyms.cc: No such file or directory
gcc: fatal error: no input files
compilation terminated.
===> src/generic/lib.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/lib.cc
/root/Orion/kernel/src/generic/lib.cc: In function ‘void* memset(void*, unsigned int, unsigned int)’:
/root/Orion/kernel/src/generic/lib.cc:56:9: warning: conversion from ‘unsigned int’ to ‘u8_t’ {aka ‘unsigned char’} may change value [-Wconversion]
  *s++ = c;
         ^
===> src/generic/kmemory.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/kmemory.cc
===> src/generic/traceids.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/traceids.cc
===> src/generic/tracebuffer.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/tracebuffer.cc
In file included from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:269:29: error: macro "ASSERT" requires 2 arguments, but only 1 given
  ASSERT( is_copy_area(addr) );
                             ^
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:323:31: error: macro "ASSERT" requires 2 arguments, but only 1 given
     ASSERT(x.thread_count != 0);
                               ^
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:90:40: error: macro "SYS_EXCHANGE_REGISTERS" requires 8 arguments, but only 7 given
    word_t uhandle, threadid_t pager_tid);
                                        ^
In file included from /root/Orion/kernel/src/api/v4/kernelinterface.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:86:
/root/Orion/kernel/src/api/v4/memdesc.h: In member function ‘void memdesc_t::set(memdesc_t::type_e, word_t, bool, addr_t, addr_t)’:
/root/Orion/kernel/src/api/v4/memdesc.h:118:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _type = type;
              ^~~~
/root/Orion/kernel/src/api/v4/memdesc.h:119:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _t    = t;
              ^
/root/Orion/kernel/src/api/v4/memdesc.h:121:29: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _low  = ((word_t) low) >> 10;
              ~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/memdesc.h:122:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _high = ((word_t) high) >> 10;
              ~~~~~~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/generic/tracebuffer.cc:86:
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_user_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:169:52: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_user_base(word_t base)  { user_base = base; }
                                                    ^~~~
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_system_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:170:56: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_system_base(word_t base)  { system_base = base; }
                                                        ^~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/space.h:39,
                 from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/arch/powerpc64/pghash.h: In member function ‘void ppc64_sdr1_t::create(word_t, word_t)’:
/root/Orion/kernel/src/arch/powerpc64/pghash.h:223:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:46’ may change value [-Wconversion]
     this->x.htaborg = base >> POWERPC64_HTABORG_SHIFT;
                            ^
/root/Orion/kernel/src/arch/powerpc64/pghash.h:224:24: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
     this->x.htabsize = size;
                        ^~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h: In member function ‘void ppc64_pte_t::create_4k(word_t, word_t, word_t, word_t)’:
/root/Orion/kernel/src/arch/powerpc64/pghash.h:249:20: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:52’ may change value [-Wconversion]
     this->x.vsid = vsid;
                    ^~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:250:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
     this->x.api = virt_to_api( virt );
                   ~~~~~~~~~~~^~~~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:251:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.h = second;
                 ^~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h: In member function ‘void ppc64_pte_t::create(word_t, word_t, word_t, word_t, word_t)’:
/root/Orion/kernel/src/arch/powerpc64/pghash.h:262:20: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:52’ may change value [-Wconversion]
     this->x.vsid = vsid;
                    ^~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:265:36: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
  this->x.api = virt_to_api( virt ) & (~(1ul));
                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:267:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
  this->x.api = virt_to_api( virt );
                ~~~~~~~~~~~^~~~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:269:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.l = large;
                 ^~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:270:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.h = second;
                 ^~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h: In member function ‘void ppc64_pte_t::create(word_t, word_t, word_t, word_t, word_t, word_t)’:
/root/Orion/kernel/src/arch/powerpc64/pghash.h:281:20: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:52’ may change value [-Wconversion]
     this->x.vsid = vsid;
                    ^~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:284:36: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
  this->x.api = virt_to_api( virt ) & (~(1ul));
                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:286:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
  this->x.api = virt_to_api( virt );
                ~~~~~~~~~~~^~~~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:288:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.bolted = bolted;
                      ^~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:289:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.l = large;
                 ^~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:290:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.h = second;
                 ^~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/space.h:41,
                 from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/fpage.h: In member function ‘void fpage_t::set(word_t, word_t, bool, bool, bool)’:
/root/Orion/kernel/src/api/v4/fpage.h:69:60: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      x.base = (base & (~0 >> (L4_FPAGE_BASE_BITS - size))) >> 10;
               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/fpage.h:70:15: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      x.size = size;
               ^~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/space.h:42,
                 from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::irqthread(word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:71:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = irq;
                            ^~~
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::threadid(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:78:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.version = version;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:79:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = threadno;
                            ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h: In member function ‘void threadid_t::set_global_id(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:126:23: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.threadno = threadno;
                       ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:127:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.version = version;
                      ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/space.h:54,
                 from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/generic/mdb.h: In constructor ‘mdb_t::range_t::range_t(addr_t, word_t)’:
/root/Orion/kernel/src/generic/mdb.h:119:24: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:57’ may change value [-Wconversion]
       idx = (word_t) b >> s;
             ~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h:120:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
       size = s;
              ^
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_next(mdb_node_t*)’:
/root/Orion/kernel/src/generic/mdb.h:549:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
  next = ((word_t) n) >> 1;
         ~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_table(mdb_table_t*)’:
/root/Orion/kernel/src/generic/mdb.h:562:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
     next = ((word_t) t) >> 1;
            ~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::remove_table()’:
/root/Orion/kernel/src/generic/mdb.h:571:49: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
     next = ((word_t) get_table ()->get_node ()) >> 1;
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_depth(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:581:13: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:50’ may change value [-Wconversion]
     depth = d;
             ^
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_objsize(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:599:16: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     obj_size = s;
                ^
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_inrights(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:617:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
     in_rights = r;
                 ^
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_outrights(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:626:18: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
     out_rights = r;
                  ^
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_tableent_t::set_table(mdb_table_t*)’:
/root/Orion/kernel/src/generic/mdb.h:692:24: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
     ptr = ((word_t) t) >> 1;
           ~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_tableent_t::set_node(mdb_node_t*)’:
/root/Orion/kernel/src/generic/mdb.h:705:21: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
  ptr = ((word_t) n) >> 1;
        ~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_table_t::remove_table(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:838:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
     e->ptr = ((word_t) n) >> 1;
              ~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_table_t::set_objsize(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:901:15: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     objsize = s;
               ^
In file included from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/space.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:60:2: error: ‘paddr_t’ does not name a type; did you mean ‘addr_t’?
  paddr_t physaddr;
  ^~~~~~~
  addr_t
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:125:12: error: extra qualification ‘space_t::’ on member ‘space_control’ [-fpermissive]
     word_t space_t::space_control (word_t ctrl, fpage_t kip_area, fpage_t utcb_area, threadid_t redirector_tid) { return 0; }
            ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:128:12: error: ‘paddr_t’ does not name a type; did you mean ‘addr_t’?
     static paddr_t sigma0_translate(addr_t addr, pgent_t::pgsize_e size) { return (paddr_t)addr; }
            ^~~~~~~
            addr_t
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:179:10: error: extra qualification ‘space_t::’ on member ‘add_mapping’ [-fpermissive]
     void space_t::add_mapping( addr_t vaddr, addr_t paddr,
          ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h: In member function ‘word_t space_t::get_copy_limit(addr_t, word_t)’:
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:269:2: error: ‘ASSERT’ was not declared in this scope
  ASSERT( is_copy_area(addr) );
  ^~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:311:13: error: no declaration matches ‘void space_t::add_tcb(tcb_t*, cpuid_t)’
 INLINE void space_t::add_tcb(tcb_t * tcb, cpuid_t cpu)
             ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:121:10: note: candidate is: ‘void space_t::add_tcb(tcb_t*)’
     void add_tcb(tcb_t * tcb);
          ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:67:7: note: ‘class space_t’ defined here
 class space_t
       ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:321:13: error: no declaration matches ‘bool space_t::remove_tcb(tcb_t*, cpuid_t)’
 INLINE bool space_t::remove_tcb(tcb_t * tcb, cpuid_t cpu)
             ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:122:10: note: candidate is: ‘bool space_t::remove_tcb(tcb_t*)’
     bool remove_tcb(tcb_t * tcb);
          ^~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:67:7: note: ‘class space_t’ defined here
 class space_t
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:47,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void msg_tag_t::set(word_t, word_t, word_t, bool, bool)’:
/root/Orion/kernel/src/api/v4/ipc.h:82:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.typed = typed;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h:83:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.untyped = untyped;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/ipc.h:84:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:48’ may change value [-Wconversion]
      this->send.label = label;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void acceptor_t::set_rcv_window(fpage_t)’:
/root/Orion/kernel/src/api/v4/ipc.h:232:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:60’ may change value [-Wconversion]
  { x.rcv_window = (fpage.raw >> 4); };
                   ~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘tcb_t* tcb_t::get_partner_tcb()’:
/root/Orion/kernel/src/api/v4/tcb.h:425:31: error: ‘class space_t’ has no member named ‘get_tcb’; did you mean ‘add_tcb’?
     return this->get_space()->get_tcb(partner);
                               ^~~~~~~
                               add_tcb
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::clear_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:570:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits = 0;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::add_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:578:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits |= bits;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::sub_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:586:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits &= ~(bits);
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘word_t tcb_t::get_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:594:24: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
     return get_utcb()->notify_bits;
                        ^~~~~~~~~~~
                        notify_mask
In file included from /root/Orion/kernel/src/arch/powerpc64/debug.h:36,
                 from /root/Orion/kernel/src/debug.h:75,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:84:
/root/Orion/kernel/src/api/v4/syscalls.h: At global scope:
/root/Orion/kernel/src/api/v4/syscalls.h:53:50: error: ‘timeout_t’ has not been declared
 SYS_IPC (threadid_t to_tid, threadid_t from_tid, timeout_t timeout);
                                                  ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/syscalls.h:75:21: note: in definition of macro ‘SYS_IPC’
  sys_ipc (to, from, timeout)
                     ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:88:1: error: ‘SYS_EXCHANGE_REGISTERS’ does not name a type
 SYS_EXCHANGE_REGISTERS (threadid_t dest_tid, word_t control,
 ^~~~~~~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:112:13: error: no declaration matches ‘void tcb_t::allocate()’
 INLINE void tcb_t::allocate()
             ^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:216:10: note: candidate is: ‘bool tcb_t::allocate()’
     bool allocate();
          ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: error: no declaration matches ‘void tcb_t::copy_saved_regs(tcb_t*)’
 INLINE void tcb_t::copy_saved_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: note: no functions named ‘void tcb_t::copy_saved_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: error: no declaration matches ‘void tcb_t::copy_volatile_regs(tcb_t*)’
 INLINE void tcb_t::copy_volatile_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: note: no functions named ‘void tcb_t::copy_volatile_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:735:33: error: ‘timeout_t’ has not been declared
                                 timeout_t timeout)
                                 ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:734:18: error: no declaration matches ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)’
 INLINE msg_tag_t tcb_t::do_ipc (threadid_t to_tid, threadid_t from_tid,
                  ^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:130:15: note: candidate is: ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t)’
     msg_tag_t do_ipc(threadid_t to_tid, threadid_t from_tid);
               ^~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function ‘void space_t::add_tcb(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:752:5: error: ‘spaces_list_lock’ was not declared in this scope
     spaces_list_lock.lock();
     ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:752:5: note: suggested alternative: ‘present_list_lock’
     spaces_list_lock.lock();
     ^~~~~~~~~~~~~~~~
     present_list_lock
In file included from /root/Orion/kernel/src/api/v4/tcb.h:40,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:37:9: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
     if (head == NULL)    \
         ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:39:2: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
  head = tcb;    \
  ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:44:19: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
  tcb->list.next = head;   \
                   ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:45:19: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
  tcb->list.prev = head->list.prev; \
                   ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:46:2: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
  head->list.prev->list.next = tcb; \
  ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:47:2: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
  head->list.prev = tcb;   \
  ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function ‘bool space_t::remove_tcb(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:768:5: error: ‘spaces_list_lock’ was not declared in this scope
     spaces_list_lock.lock();
     ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:768:5: note: suggested alternative: ‘present_list_lock’
     spaces_list_lock.lock();
     ^~~~~~~~~~~~~~~~
     present_list_lock
In file included from /root/Orion/kernel/src/api/v4/tcb.h:40,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:769:20: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     DEQUEUE_LIST(x.thread_list, tcb, thread_list);
                    ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:69:2: note: in definition of macro ‘DEQUEUE_LIST’
  head = NULL;     \
  ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:769:20: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     DEQUEUE_LIST(x.thread_list, tcb, thread_list);
                    ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:74:6: note: in definition of macro ‘DEQUEUE_LIST’
  if (head == tcb)    \
      ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:769:20: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     DEQUEUE_LIST(x.thread_list, tcb, thread_list);
                    ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:75:6: note: in definition of macro ‘DEQUEUE_LIST’
      head = tcb->list.next;   \
      ^~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘bool tcb_t::is_local_cpu()’:
/root/Orion/kernel/src/api/v4/tcb.h:739:13: error: ‘get_current_cpu’ was not declared in this scope
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:739:13: note: suggested alternative: ‘get_current_tcb’
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
             get_current_tcb
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/space.h:44,
                 from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/pgent.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/pgent.h:197:22: warning: inline function ‘pgent_t* pgent_t::next(space_t*, pgent_t::pgsize_e, word_t)’ used but never defined
     inline pgent_t * next( space_t * s, pgsize_e pgsize, word_t num );
                      ^~~~
make[1]: *** [/root/Orion/kernel/Mk/Makeconf:208: src/generic/tracebuffer.o] Error 1
make[1]: Leaving directory '/root/Orion/kernel/p3'
make: *** [Makefile:38: all] Error 2
[root@fedora28 p3]# 
vmlemon commented 5 years ago

Disabling asserts gives:

[root@fedora28 p3]# make
make[1]: Entering directory '/root/Orion/kernel/p3'
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c src/glue/v4-powerpc64/asmsyms.cc
gcc: error: src/glue/v4-powerpc64/asmsyms.cc: No such file or directory
gcc: fatal error: no input files
compilation terminated.
===> src/generic/lib.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/lib.cc
/root/Orion/kernel/src/generic/lib.cc: In function ‘void* memset(void*, unsigned int, unsigned int)’:
/root/Orion/kernel/src/generic/lib.cc:56:9: warning: conversion from ‘unsigned int’ to ‘u8_t’ {aka ‘unsigned char’} may change value [-Wconversion]
  *s++ = c;
         ^
===> src/generic/kmemory.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/kmemory.cc
===> src/generic/traceids.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/traceids.cc
===> src/generic/tracebuffer.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/p3/include -I/root/Orion/kernel/src -I/root/Orion/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4p -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4p -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/Orion/kernel/p3/config/config.h -imacros /root/Orion/kernel/src/generic/macros.h -include /root/Orion/kernel/src/generic/config.h  -include /root/Orion/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/Orion/kernel/src/generic/tracebuffer.cc
In file included from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:269:29: error: macro "ASSERT" requires 2 arguments, but only 1 given
  ASSERT( is_copy_area(addr) );
                             ^
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:323:31: error: macro "ASSERT" requires 2 arguments, but only 1 given
     ASSERT(x.thread_count != 0);
                               ^
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:90:40: error: macro "SYS_EXCHANGE_REGISTERS" requires 8 arguments, but only 7 given
    word_t uhandle, threadid_t pager_tid);
                                        ^
In file included from /root/Orion/kernel/src/api/v4/kernelinterface.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:86:
/root/Orion/kernel/src/api/v4/memdesc.h: In member function ‘void memdesc_t::set(memdesc_t::type_e, word_t, bool, addr_t, addr_t)’:
/root/Orion/kernel/src/api/v4/memdesc.h:118:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _type = type;
              ^~~~
/root/Orion/kernel/src/api/v4/memdesc.h:119:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
      _t    = t;
              ^
/root/Orion/kernel/src/api/v4/memdesc.h:121:29: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _low  = ((word_t) low) >> 10;
              ~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/memdesc.h:122:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      _high = ((word_t) high) >> 10;
              ~~~~~~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/generic/tracebuffer.cc:86:
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_user_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:169:52: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_user_base(word_t base)  { user_base = base; }
                                                    ^~~~
/root/Orion/kernel/src/api/v4/kernelinterface.h: In member function ‘void thread_info_t::set_system_base(word_t)’:
/root/Orion/kernel/src/api/v4/kernelinterface.h:170:56: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:12’ may change value [-Wconversion]
     void set_system_base(word_t base)  { system_base = base; }
                                                        ^~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/space.h:39,
                 from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/arch/powerpc64/pghash.h: In member function ‘void ppc64_sdr1_t::create(word_t, word_t)’:
/root/Orion/kernel/src/arch/powerpc64/pghash.h:223:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:46’ may change value [-Wconversion]
     this->x.htaborg = base >> POWERPC64_HTABORG_SHIFT;
                            ^
/root/Orion/kernel/src/arch/powerpc64/pghash.h:224:24: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
     this->x.htabsize = size;
                        ^~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h: In member function ‘void ppc64_pte_t::create_4k(word_t, word_t, word_t, word_t)’:
/root/Orion/kernel/src/arch/powerpc64/pghash.h:249:20: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:52’ may change value [-Wconversion]
     this->x.vsid = vsid;
                    ^~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:250:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
     this->x.api = virt_to_api( virt );
                   ~~~~~~~~~~~^~~~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:251:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.h = second;
                 ^~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h: In member function ‘void ppc64_pte_t::create(word_t, word_t, word_t, word_t, word_t)’:
/root/Orion/kernel/src/arch/powerpc64/pghash.h:262:20: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:52’ may change value [-Wconversion]
     this->x.vsid = vsid;
                    ^~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:265:36: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
  this->x.api = virt_to_api( virt ) & (~(1ul));
                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:267:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
  this->x.api = virt_to_api( virt );
                ~~~~~~~~~~~^~~~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:269:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.l = large;
                 ^~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:270:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.h = second;
                 ^~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h: In member function ‘void ppc64_pte_t::create(word_t, word_t, word_t, word_t, word_t, word_t)’:
/root/Orion/kernel/src/arch/powerpc64/pghash.h:281:20: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:52’ may change value [-Wconversion]
     this->x.vsid = vsid;
                    ^~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:284:36: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
  this->x.api = virt_to_api( virt ) & (~(1ul));
                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:286:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
  this->x.api = virt_to_api( virt );
                ~~~~~~~~~~~^~~~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:288:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.bolted = bolted;
                      ^~~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:289:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.l = large;
                 ^~~~~
/root/Orion/kernel/src/arch/powerpc64/pghash.h:290:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     this->x.h = second;
                 ^~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/space.h:41,
                 from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/fpage.h: In member function ‘void fpage_t::set(word_t, word_t, bool, bool, bool)’:
/root/Orion/kernel/src/api/v4/fpage.h:69:60: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
      x.base = (base & (~0 >> (L4_FPAGE_BASE_BITS - size))) >> 10;
               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/root/Orion/kernel/src/api/v4/fpage.h:70:15: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      x.size = size;
               ^~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/space.h:42,
                 from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::irqthread(word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:71:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = irq;
                            ^~~
/root/Orion/kernel/src/api/v4/thread.h: In static member function ‘static threadid_t threadid_t::threadid(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:78:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.version = version;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:79:28: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
      tid.global.threadno = threadno;
                            ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h: In member function ‘void threadid_t::set_global_id(word_t, word_t)’:
/root/Orion/kernel/src/api/v4/thread.h:126:23: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.threadno = threadno;
                       ^~~~~~~~
/root/Orion/kernel/src/api/v4/thread.h:127:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     global.version = version;
                      ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/space.h:54,
                 from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/generic/mdb.h: In constructor ‘mdb_t::range_t::range_t(addr_t, word_t)’:
/root/Orion/kernel/src/generic/mdb.h:119:24: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:57’ may change value [-Wconversion]
       idx = (word_t) b >> s;
             ~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h:120:14: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
       size = s;
              ^
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_next(mdb_node_t*)’:
/root/Orion/kernel/src/generic/mdb.h:549:22: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
  next = ((word_t) n) >> 1;
         ~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_table(mdb_table_t*)’:
/root/Orion/kernel/src/generic/mdb.h:562:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
     next = ((word_t) t) >> 1;
            ~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::remove_table()’:
/root/Orion/kernel/src/generic/mdb.h:571:49: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
     next = ((word_t) get_table ()->get_node ()) >> 1;
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_depth(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:581:13: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:50’ may change value [-Wconversion]
     depth = d;
             ^
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_objsize(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:599:16: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     obj_size = s;
                ^
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_inrights(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:617:17: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
     in_rights = r;
                 ^
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_node_t::set_outrights(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:626:18: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:4’ may change value [-Wconversion]
     out_rights = r;
                  ^
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_tableent_t::set_table(mdb_table_t*)’:
/root/Orion/kernel/src/generic/mdb.h:692:24: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
     ptr = ((word_t) t) >> 1;
           ~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_tableent_t::set_node(mdb_node_t*)’:
/root/Orion/kernel/src/generic/mdb.h:705:21: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
  ptr = ((word_t) n) >> 1;
        ~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_table_t::remove_table(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:838:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:63’ may change value [-Wconversion]
     e->ptr = ((word_t) n) >> 1;
              ~~~~~~~~~~~~~^~~~
/root/Orion/kernel/src/generic/mdb.h: In member function ‘void mdb_table_t::set_objsize(word_t)’:
/root/Orion/kernel/src/generic/mdb.h:901:15: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     objsize = s;
               ^
In file included from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/space.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:60:2: error: ‘paddr_t’ does not name a type; did you mean ‘addr_t’?
  paddr_t physaddr;
  ^~~~~~~
  addr_t
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:125:12: error: extra qualification ‘space_t::’ on member ‘space_control’ [-fpermissive]
     word_t space_t::space_control (word_t ctrl, fpage_t kip_area, fpage_t utcb_area, threadid_t redirector_tid) { return 0; }
            ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:128:12: error: ‘paddr_t’ does not name a type; did you mean ‘addr_t’?
     static paddr_t sigma0_translate(addr_t addr, pgent_t::pgsize_e size) { return (paddr_t)addr; }
            ^~~~~~~
            addr_t
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:179:10: error: extra qualification ‘space_t::’ on member ‘add_mapping’ [-fpermissive]
     void space_t::add_mapping( addr_t vaddr, addr_t paddr,
          ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h: In member function ‘word_t space_t::get_copy_limit(addr_t, word_t)’:
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:269:2: error: ‘ASSERT’ was not declared in this scope
  ASSERT( is_copy_area(addr) );
  ^~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:311:13: error: no declaration matches ‘void space_t::add_tcb(tcb_t*, cpuid_t)’
 INLINE void space_t::add_tcb(tcb_t * tcb, cpuid_t cpu)
             ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:121:10: note: candidate is: ‘void space_t::add_tcb(tcb_t*)’
     void add_tcb(tcb_t * tcb);
          ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:67:7: note: ‘class space_t’ defined here
 class space_t
       ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:321:13: error: no declaration matches ‘bool space_t::remove_tcb(tcb_t*, cpuid_t)’
 INLINE bool space_t::remove_tcb(tcb_t * tcb, cpuid_t cpu)
             ^~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:122:10: note: candidate is: ‘bool space_t::remove_tcb(tcb_t*)’
     bool remove_tcb(tcb_t * tcb);
          ^~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:67:7: note: ‘class space_t’ defined here
 class space_t
       ^~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:47,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void msg_tag_t::set(word_t, word_t, word_t, bool, bool)’:
/root/Orion/kernel/src/api/v4/ipc.h:82:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.typed = typed;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h:83:27: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
      this->send.untyped = untyped;
                           ^~~~~~~
/root/Orion/kernel/src/api/v4/ipc.h:84:25: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:48’ may change value [-Wconversion]
      this->send.label = label;
                         ^~~~~
/root/Orion/kernel/src/api/v4/ipc.h: In member function ‘void acceptor_t::set_rcv_window(fpage_t)’:
/root/Orion/kernel/src/api/v4/ipc.h:232:30: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:60’ may change value [-Wconversion]
  { x.rcv_window = (fpage.raw >> 4); };
                   ~~~~~~~~~~~^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘tcb_t* tcb_t::get_partner_tcb()’:
/root/Orion/kernel/src/api/v4/tcb.h:425:31: error: ‘class space_t’ has no member named ‘get_tcb’; did you mean ‘add_tcb’?
     return this->get_space()->get_tcb(partner);
                               ^~~~~~~
                               add_tcb
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::clear_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:570:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits = 0;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::add_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:578:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits |= bits;
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘void tcb_t::sub_notify_bits(word_t)’:
/root/Orion/kernel/src/api/v4/tcb.h:586:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
  get_utcb()->notify_bits &= ~(bits);
              ^~~~~~~~~~~
              notify_mask
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘word_t tcb_t::get_notify_bits()’:
/root/Orion/kernel/src/api/v4/tcb.h:594:24: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
     return get_utcb()->notify_bits;
                        ^~~~~~~~~~~
                        notify_mask
In file included from /root/Orion/kernel/src/arch/powerpc64/debug.h:36,
                 from /root/Orion/kernel/src/debug.h:75,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:84:
/root/Orion/kernel/src/api/v4/syscalls.h: At global scope:
/root/Orion/kernel/src/api/v4/syscalls.h:53:50: error: ‘timeout_t’ has not been declared
 SYS_IPC (threadid_t to_tid, threadid_t from_tid, timeout_t timeout);
                                                  ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/syscalls.h:75:21: note: in definition of macro ‘SYS_IPC’
  sys_ipc (to, from, timeout)
                     ^~~~~~~
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:41,
                 from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/syscalls.h:88:1: error: ‘SYS_EXCHANGE_REGISTERS’ does not name a type
 SYS_EXCHANGE_REGISTERS (threadid_t dest_tid, word_t control,
 ^~~~~~~~~~~~~~~~~~~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:112:13: error: no declaration matches ‘void tcb_t::allocate()’
 INLINE void tcb_t::allocate()
             ^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:216:10: note: candidate is: ‘bool tcb_t::allocate()’
     bool allocate();
          ^~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: error: no declaration matches ‘void tcb_t::copy_saved_regs(tcb_t*)’
 INLINE void tcb_t::copy_saved_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: note: no functions named ‘void tcb_t::copy_saved_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: error: no declaration matches ‘void tcb_t::copy_volatile_regs(tcb_t*)’
 INLINE void tcb_t::copy_volatile_regs(tcb_t *src)
             ^~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: note: no functions named ‘void tcb_t::copy_volatile_regs(tcb_t*)’
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:735:33: error: ‘timeout_t’ has not been declared
                                 timeout_t timeout)
                                 ^~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:734:18: error: no declaration matches ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)’
 INLINE msg_tag_t tcb_t::do_ipc (threadid_t to_tid, threadid_t from_tid,
                  ^~~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h:130:15: note: candidate is: ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t)’
     msg_tag_t do_ipc(threadid_t to_tid, threadid_t from_tid);
               ^~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:60:7: note: ‘class tcb_t’ defined here
 class tcb_t
       ^~~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function ‘void space_t::add_tcb(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:752:5: error: ‘spaces_list_lock’ was not declared in this scope
     spaces_list_lock.lock();
     ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:752:5: note: suggested alternative: ‘present_list_lock’
     spaces_list_lock.lock();
     ^~~~~~~~~~~~~~~~
     present_list_lock
In file included from /root/Orion/kernel/src/api/v4/tcb.h:40,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:37:9: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
     if (head == NULL)    \
         ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:39:2: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
  head = tcb;    \
  ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:44:19: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
  tcb->list.next = head;   \
                   ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:45:19: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
  tcb->list.prev = head->list.prev; \
                   ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:46:2: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
  head->list.prev->list.next = tcb; \
  ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:753:25: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     ENQUEUE_LIST_TAIL(x.thread_list, tcb, thread_list);
                         ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:47:2: note: in definition of macro ‘ENQUEUE_LIST_TAIL’
  head->list.prev = tcb;   \
  ^~~~
In file included from /root/Orion/kernel/src/api/v4/tcb.h:707,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: In member function ‘bool space_t::remove_tcb(tcb_t*)’:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:768:5: error: ‘spaces_list_lock’ was not declared in this scope
     spaces_list_lock.lock();
     ^~~~~~~~~~~~~~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:768:5: note: suggested alternative: ‘present_list_lock’
     spaces_list_lock.lock();
     ^~~~~~~~~~~~~~~~
     present_list_lock
In file included from /root/Orion/kernel/src/api/v4/tcb.h:40,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:769:20: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     DEQUEUE_LIST(x.thread_list, tcb, thread_list);
                    ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:69:2: note: in definition of macro ‘DEQUEUE_LIST’
  head = NULL;     \
  ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:769:20: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     DEQUEUE_LIST(x.thread_list, tcb, thread_list);
                    ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:74:6: note: in definition of macro ‘DEQUEUE_LIST’
  if (head == tcb)    \
      ^~~~
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:769:20: error: ‘struct space_t::<unnamed union>::<unnamed>’ has no member named ‘thread_list’; did you mean ‘thread_count’?
     DEQUEUE_LIST(x.thread_list, tcb, thread_list);
                    ^~~~~~~~~~~
/root/Orion/kernel/src/api/v4/queueing.h:75:6: note: in definition of macro ‘DEQUEUE_LIST’
      head = tcb->list.next;   \
      ^~~~
In file included from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/tcb.h: In member function ‘bool tcb_t::is_local_cpu()’:
/root/Orion/kernel/src/api/v4/tcb.h:739:13: error: ‘get_current_cpu’ was not declared in this scope
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
/root/Orion/kernel/src/api/v4/tcb.h:739:13: note: suggested alternative: ‘get_current_tcb’
     return (get_current_cpu() == get_cpu());
             ^~~~~~~~~~~~~~~
             get_current_tcb
In file included from /root/Orion/kernel/src/glue/v4-powerpc64/space.h:44,
                 from /root/Orion/kernel/src/api/v4/space.h:37,
                 from /root/Orion/kernel/src/api/v4/tcb.h:42,
                 from /root/Orion/kernel/src/api/v4/schedule.h:37,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/glue/v4-powerpc64/pgent.h: At global scope:
/root/Orion/kernel/src/glue/v4-powerpc64/pgent.h:197:22: warning: inline function ‘pgent_t* pgent_t::next(space_t*, pgent_t::pgsize_e, word_t)’ used but never defined
     inline pgent_t * next( space_t * s, pgsize_e pgsize, word_t num );
                      ^~~~
make[1]: *** [/root/Orion/kernel/Mk/Makeconf:208: src/generic/tracebuffer.o] Error 1
make[1]: Leaving directory '/root/Orion/kernel/p3'
make: *** [Makefile:38: all] Error 2
[root@fedora28 p3]# 
vmlemon commented 5 years ago

https://github.com/vmlemon/Orion/blob/0dba091cdd5bfd905f6f41bd7c621b1a436d423e/kernel/src/glue/v4-powerpc64/tcb.h guards the spaces_list_lock:

#ifdef CONFIG_DEBUG
space_t * global_spaces_list UNIT("kdebug") = NULL;
spinlock_t spaces_list_lock;
#endif
vmlemon commented 5 years ago

As a point of comparison, upstream Pistachio doesn't build, at all:

[root@fedora28 btest]# make
make[1]: Entering directory '/root/pistachio/kernel/btest'
===> src/generic/lib.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/pistachio/kernel/btest/include -I/root/pistachio/kernel/src -I/root/pistachio/kernel/src/generic -I/usr/lib/gcc/ppc64-redhat-linux/8/include/ -Upowerpc64 -Upower4 -Uofpower4 -Uv4 -Urr -D__ARCH__=powerpc64 -D__CPU__=power4 -D__PLATFORM__=ofpower4 -D__API__=v4 -D__SCHED__=rr -imacros /root/pistachio/kernel/btest/config/config.h -imacros /root/pistachio/kernel/src/generic/macros.h -include /root/pistachio/kernel/src/generic/config.h  -include /root/pistachio/kernel/src/generic/types.h -fno-rtti -fno-builtin  -fomit-frame-pointer -fno-exceptions -Wall -Wno-non-virtual-dtor -Wno-format -O2 -mpowerpc64 -msoft-float -mno-minimal-toc  -mcpu=power4   -Wconversion  -c /root/pistachio/kernel/src/generic/lib.cc
In file included from /root/pistachio/kernel/src/generic/lib.cc:32:
/root/pistachio/kernel/src/generic/debug.h:69:1: error: ‘tcb_t’ does not name a type
 tcb_t *get_kdebug_tcb();
 ^~~~~
/root/pistachio/kernel/src/generic/lib.cc: In function ‘void* memset(void*, unsigned int, unsigned int)’:
/root/pistachio/kernel/src/generic/lib.cc:55:9: warning: conversion from ‘unsigned int’ to ‘u8_t’ {aka ‘unsigned char’} may change value [-Wconversion]
  *s++ = c;
         ^
make[1]: *** [/root/pistachio/kernel/Mk/Makeconf:208: src/generic/lib.o] Error 1
make[1]: Leaving directory '/root/pistachio/kernel/btest'
make: *** [Makefile:38: all] Error 2
vmlemon commented 5 years ago

We get to a different place, after pulling in https://raw.githubusercontent.com/l4ka/pistachio/master/kernel/src/api/v4/types.h:

n
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:313:5: error: ‘x’ was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/space.h:324:5: error: ‘x’ was not declared in this scope
/root/Orion/kernel/src/api/v4/tcb.h:425:31: error: ‘class space_t’ has no member named ‘get_tcb’; did you mean ‘add_tcb’?
/root/Orion/kernel/src/api/v4/tcb.h:570:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
/root/Orion/kernel/src/api/v4/tcb.h:578:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
/root/Orion/kernel/src/api/v4/tcb.h:586:14: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
/root/Orion/kernel/src/api/v4/tcb.h:594:24: error: ‘class utcb_t’ has no member named ‘notify_bits’; did you mean ‘notify_mask’?
/root/Orion/kernel/src/api/v4/syscalls.h:88:1: error: ‘SYS_EXCHANGE_REGISTERS’ does not name a type
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:112:13: error: no declaration matches ‘void tcb_t::allocate()’
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:569:13: error: no declaration matches ‘void tcb_t::copy_saved_regs(tcb_t*)’
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:601:13: error: no declaration matches ‘void tcb_t::copy_volatile_regs(tcb_t*)’
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:734:18: error: no declaration matches ‘msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, timeout_t)’
/root/Orion/kernel/src/api/v4/tcb.h:739:13: error: ‘get_current_cpu’ was not declared in this scope