Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing tracebuffer.h? #6

Open
vmlemon opened this issue Sep 4, 2019 · 18 comments
Open

Missing tracebuffer.h? #6

vmlemon opened this issue Sep 4, 2019 · 18 comments

Comments

@vmlemon
Copy link
Owner

vmlemon commented Sep 4, 2019

Using the Fedora PPC64BE machine, I can build libio just fine (the first library, that builds on both little/big endians), but building libl4 bails with:

[root@fedora28 lib]# make
make[1]: Entering directory '/root/Orion/user/lib/l4'
make[1]: *** No rule to make target 'l4/powerpc64/tracebuffer.h', needed by 'debug.o'.  Stop.
make[1]: Leaving directory '/root/Orion/user/lib/l4'
make: *** [../Mk/l4.subdir.mk:41: subdirs-all] Error 2
[root@fedora28 lib]# cd l4
[root@fedora28 l4]# ls
amd64.cc  amd64.o  debug.cc  ia32.cc  ia32-syscall-stubs.S  Makefile  Makefile.in  Notes_Endian.txt  powerpc64.cc  powerpc.cc
[root@fedora28 l4]# make
===> debug.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/ppc64-redhat-linux/8/include   -nostdinc -g -O2 -msoft-float -mminimal-toc   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c debug.cc -o debug.o
In file included from ../../include/l4/kip.h:35,
                 from debug.cc:31:
../../include/l4/types.h:63:29: fatal error: l4/powerpc64/tracebuffer.h: No such file or directory
 #define __L4_INC_ARCH(file) <l4/__L4_ARCH__/file>
                             ^
compilation terminated.
make: *** [../../Mk/l4.build.mk:58: debug.o] Error 1

Need to look into this, at some stage...

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 8, 2019

If we configure, with the old compiler:

[root@fedora28 user]# make
make[1]: Entering directory '/root/Orion/user/lib'
make[2]: Entering directory '/root/Orion/user/lib/l4'
===> debug.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/ppc64-redhat-linux/8/include   -nostdinc -g -O2 -msoft-float -mminimal-toc   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c debug.cc -o debug.o
In file included from ../../include/l4/kip.h:35,
                 from debug.cc:31:
../../include/l4/types.h:63:29: fatal error: l4/powerpc64/tracebuffer.h: No such file or directory
 #define __L4_INC_ARCH(file) <l4/__L4_ARCH__/file>
                             ^
compilation terminated.
make[2]: *** [../../Mk/l4.build.mk:58: debug.o] Error 1
make[2]: Leaving directory '/root/Orion/user/lib/l4'
make[1]: *** [../Mk/l4.subdir.mk:41: subdirs-all] Error 2
make[1]: Leaving directory '/root/Orion/user/lib'
make: *** [Mk/l4.subdir.mk:41: subdirs-all] Error 2
[root@fedora28 user]# make clean
make[1]: Entering directory '/root/Orion/user/lib'
make[2]: Entering directory '/root/Orion/user/lib/l4'
rm -f *~ \#* libl4.a  debug.o powerpc64.o   .depend
make[2]: Leaving directory '/root/Orion/user/lib/l4'
make[2]: Entering directory '/root/Orion/user/lib/io'
===> Making dependencies in .
rm -f *~ \#* libio.a  get_hex.o print.o powerpc64.o   .depend
make[2]: Leaving directory '/root/Orion/user/lib/io'
rm -f *.a
make[1]: Leaving directory '/root/Orion/user/lib'
make[1]: Entering directory '/root/Orion/user/serv'
make[2]: Entering directory '/root/Orion/user/serv/sigma0'
===> Making dependencies in .
rm -f *~ \#* sigma0 crt0-powerpc64.o sigma0.o sigma0_mem.o region.o   .depend
make[2]: Leaving directory '/root/Orion/user/serv/sigma0'
make[1]: Leaving directory '/root/Orion/user/serv'
make[1]: Entering directory '/root/Orion/user/apps'
make[2]: Entering directory '/root/Orion/user/apps/bench'
make[3]: Entering directory '/root/Orion/user/apps/bench/pingpong'
===> Making dependencies in .
rm -f *~ \#* pingpong crt0-powerpc64.o pingpong.o   .depend
make[3]: Leaving directory '/root/Orion/user/apps/bench/pingpong'
make[2]: Leaving directory '/root/Orion/user/apps/bench'
make[2]: Entering directory '/root/Orion/user/apps/grabmem'
===> Making dependencies in .
rm -f *~ \#* grabmem crt0-powerpc64.o grabmem.o   .depend
make[2]: Leaving directory '/root/Orion/user/apps/grabmem'
make[2]: Entering directory '/root/Orion/user/apps/l4test'
===> Making dependencies in .
rm -f *~ \#* l4test powerpc64/crt0.o main.o assert.o menu.o threads.o string.o ipc.o ipc-string.o ipc-pf.o ipc-smp.o kip.o mem.o sig0.o exreg.o tcontrol.o schedule.o powerpc64/help.o powerpc64/tests.o powerpc64/1275tree.o   .depend
rmdir: failed to remove './powerpc64': Directory not empty
make[2]: *** [Makefile:67: post-clean] Error 1
make[2]: Leaving directory '/root/Orion/user/apps/l4test'
make[1]: *** [../Mk/l4.subdir.mk:51: subdirs-clean] Error 2
make[1]: Leaving directory '/root/Orion/user/apps'
make: *** [Mk/l4.subdir.mk:51: subdirs-clean] Error 2
[root@fedora28 user]# CC=gcc34 ./configure
checking for gcc... gcc34
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc34 accepts -g... yes
checking for gcc34 option to accept ISO C89... none needed
checking for a BSD-compatible install... /usr/bin/install -c
checking whether make sets $(MAKE)... yes
checking whether ln -s works... yes
checking for gawk... gawk
checking location of libgcc.a... /usr/lib/gcc/ppc64-redhat-linux/3.4.6
checking location of stdarg.h... /usr/lib/gcc/ppc64-redhat-linux/3.4.6/include
checking kernel build directory... $(top_builddir)
configure: creating ./config.status
config.status: creating config.mk
config.status: creating Makefile
config.status: creating lib/Makefile
config.status: creating lib/l4/Makefile
config.status: creating lib/io/Makefile
config.status: creating serv/Makefile
config.status: creating serv/sigma0/Makefile
config.status: creating apps/Makefile
config.status: creating apps/bench/Makefile
config.status: creating apps/bench/pingpong/Makefile
config.status: creating apps/grabmem/Makefile
config.status: creating apps/l4test/Makefile
config.status: creating util/Makefile
config.status: creating util/kickstart/Makefile
config.status: creating util/grubdisk/Makefile
config.status: creating util/piggybacker/Makefile
config.status: creating util/piggybacker/ofppc/Makefile
config.status: creating util/piggybacker/ofppc64/Makefile
config.status: creating contrib/Makefile
config.status: creating contrib/elf-loader/Makefile
config.status: creating config.h
config.status: config.h is unchanged
[root@fedora28 user]# make
make[1]: Entering directory '/root/Orion/user/lib'
make[2]: Entering directory '/root/Orion/user/lib/l4'
===> Making dependencies in .
cc1plus: error: unrecognized command line option "-fno-stack-protector"
cc1plus: error: unrecognized command line option "-fno-stack-protector"
cc1plus: error: unrecognized command line option "-fno-stack-protector"
cc1plus: error: unrecognized command line option "-fno-stack-protector"
make[2]: *** No rule to make target '.depend', needed by 'library-all'.  Stop.
make[2]: Leaving directory '/root/Orion/user/lib/l4'
make[1]: *** [../Mk/l4.subdir.mk:41: subdirs-all] Error 2
make[1]: Leaving directory '/root/Orion/user/lib'
make: *** [Mk/l4.subdir.mk:41: subdirs-all] Error 2
[root@fedora28 user]# 

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

After running autoreconf, in the user directory, we can actually get to build a lot of the userland, again, in the NICTA_Pistachio_Mainline_FCL branch, despite the breaking work made in support of #9:

[NICTA_Pistachio_Mainline_FCL 286ddc8] Try to build the userland
 19 files changed, 2851 insertions(+), 135 deletions(-)
 create mode 100644 user/ULBuild1.txt
 create mode 100644 user/apps/bench/pingpong/.depend
 create mode 100644 user/apps/bench/pingpong/pingpong.o
 create mode 100644 user/lib/io/.depend
 create mode 100644 user/lib/io/get_hex.o
 create mode 100644 user/lib/io/libio.a
 create mode 100644 user/lib/io/print.o
 create mode 100644 user/lib/l4/debug.o
 create mode 100644 user/lib/l4/libl4.a
 create mode 100644 user/lib/libio.a
 create mode 100644 user/lib/libl4.a
 create mode 100644 user/serv/sigma0/.depend
 create mode 100644 user/serv/sigma0/region.o
 create mode 100755 user/serv/sigma0/sigma0
 create mode 100644 user/serv/sigma0/sigma0.o
 create mode 100644 user/serv/sigma0/sigma0_mem.o

It's worth pointing out, that pingpong always had some kind of problems, but we report the following, with GCC 8.3.0:

gcc -I../../../include -I../../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include    -m32 -fno-exceptions  -fno-stack-protector -lssp  -fno-stack-protector -lssp -x c++ -c pingpong-amd64-32.cc -o pingpong-amd64-32.o
objcopy -g -O elf64-x86-64 pingpong-amd64-32.o pingpong-amd64-32.o
===> Linking ./pingpong
ld -e_start -N -L../../../lib -L/usr/lib/gcc/x86_64-linux-gnu/8 -nostdlib  -melf_x86_64  -Ttext=01000000  -fno-stack-protector -lssp crt0-amd64.o pingpong.o pingpong-amd64-32.o    -ll4 -lio -lgcc -o pingpong
ld: -f may not be used without -shared
make[3]: *** [../../../Mk/l4.prog.mk:54: pingpong] Error 1
make[3]: Leaving directory '/home/tyson/Orion/user/apps/bench/pingpong'
make[2]: *** [../../Mk/l4.subdir.mk:41: subdirs-all] Error 2
make[2]: Leaving directory '/home/tyson/Orion/user/apps/bench'
make[1]: *** [../Mk/l4.subdir.mk:41: subdirs-all] Error 2
make[1]: Leaving directory '/home/tyson/Orion/user/apps'

This progress is only on x86-64, and we need to go back, and look at x86-32, and PowerPC.

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

Problem still happens on PPC64:

root@fedora28 user]# autoreconf
aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'
[root@fedora28 user]# ./configure &> PPC64conf
[root@fedora28 user]# make &> PPC64make
[root@fedora28 user]# cat PPC64make 
make[1]: Entering directory '/root/Orion/user/lib'
make[2]: Entering directory '/root/Orion/user/lib/l4'
===> Making dependencies in .
make[2]: *** No rule to make target 'l4/powerpc64/tracebuffer.h', needed by 'debug.o'.  Stop.
make[2]: Leaving directory '/root/Orion/user/lib/l4'
make[1]: *** [../Mk/l4.subdir.mk:41: subdirs-all] Error 2
make[1]: Leaving directory '/root/Orion/user/lib'
make: *** [Mk/l4.subdir.mk:41: subdirs-all] Error 2
[root@fedora28 user]# cat PPC64conf 
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for a BSD-compatible install... /usr/bin/install -c
checking whether make sets $(MAKE)... yes
checking whether ln -s works... yes
checking for gawk... gawk
checking location of libgcc.a... /usr/lib/gcc/ppc64-redhat-linux/8
checking location of stdarg.h... /usr/lib/gcc/ppc64-redhat-linux/8/include
checking kernel build directory... $(top_builddir)
configure: creating ./config.status
config.status: creating config.mk
config.status: creating Makefile
config.status: creating lib/Makefile
config.status: creating lib/l4/Makefile
config.status: creating lib/io/Makefile
config.status: creating serv/Makefile
config.status: creating serv/sigma0/Makefile
config.status: creating apps/Makefile
config.status: creating apps/bench/Makefile
config.status: creating apps/bench/pingpong/Makefile
config.status: creating apps/grabmem/Makefile
config.status: creating apps/l4test/Makefile
config.status: creating util/Makefile
config.status: creating util/kickstart/Makefile
config.status: creating util/grubdisk/Makefile
config.status: creating util/piggybacker/Makefile
config.status: creating util/piggybacker/ofppc/Makefile
config.status: creating util/piggybacker/ofppc64/Makefile
config.status: creating contrib/Makefile
config.status: creating contrib/elf-loader/Makefile
config.status: creating config.h
config.status: config.h is unchanged
[root@fedora28 user]# 

Could probably reverse-engineer the build system, and see what's going on.

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

For x86, we get further, by relocating the NICTA tracebuffer.h (d4f76c0):

[master 69a9bde] Try to rebuild x86 userland
 23 files changed, 637 insertions(+)
 create mode 100644 user/apps/bench/pingpong/.depend
 create mode 100644 user/apps/bench/pingpong/crt0-amd64.o
 create mode 100644 user/apps/bench/pingpong/pingpong-amd64-32.o
 create mode 100644 user/apps/bench/pingpong/pingpong.o
 create mode 100644 user/lib/io/.depend
 create mode 100644 user/lib/io/amd64.o
 create mode 100644 user/lib/io/get_hex.o
 create mode 100644 user/lib/io/libio.a
 create mode 100644 user/lib/io/print.o
 create mode 100644 user/lib/l4/.depend
 create mode 100644 user/lib/l4/amd64.o
 create mode 100644 user/lib/l4/debug.o
 create mode 100644 user/lib/l4/libl4.a
 create mode 100644 user/lib/libio.a
 create mode 100644 user/lib/libl4.a
 create mode 100644 user/serv/sigma0/.depend
 create mode 100644 user/serv/sigma0/crt0-amd64.o
 create mode 100644 user/serv/sigma0/region.o
 create mode 100755 user/serv/sigma0/sigma0
 create mode 100644 user/serv/sigma0/sigma0.o
 create mode 100644 user/serv/sigma0/sigma0_io.o
 create mode 100644 user/serv/sigma0/sigma0_mem.o

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

libio now seems to build fine, on PPC64, so turning to libl4:

[root@fedora28 l4]# make
===> debug.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/ppc64-redhat-linux/8/include   -nostdinc -g -O2 -msoft-float -mminimal-toc   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c debug.cc -o debug.o
In file included from ../../include/l4/kip.h:35,
                 from debug.cc:31:
../../include/l4/types.h:63:29: fatal error: l4/powerpc64/tracebuffer.h: No such file or directory
 #define __L4_INC_ARCH(file) <l4/__L4_ARCH__/file>
                             ^
compilation terminated.

If we force-build powerpc64.cc:

[root@fedora28 l4]# make powerpc64
gcc -x c++ -nostdinc -g -O2 -msoft-float -mminimal-toc   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -I../../include -I../.. -I/usr/lib/gcc/ppc64-redhat-linux/8/include   -N -L../../lib -L/usr/lib/gcc/ppc64-redhat-linux/8 -nostdlib    powerpc64.cc   -o powerpc64
In file included from ../../include/l4/kip.h:35,
                 from powerpc64.cc:32:
../../include/l4/types.h: In function ‘L4_Fpage_t L4_Set_Rights(L4_Fpage_t*, L4_Word_t)’:
../../include/l4/types.h:183:16: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:3’ may change value [-Wconversion]
     f->X.rwx = rwx;
                ^~~
../../include/l4/types.h: In function ‘L4_Fpage_t L4_FpageAddRights(L4_Fpage_t, L4_Word_t)’:
../../include/l4/types.h:189:13: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:3’ may change value [-Wconversion]
     f.X.rwx |= rwx;
     ~~~~~~~~^~~~~~
../../include/l4/types.h: In function ‘L4_Fpage_t L4_FpageAddRightsTo(L4_Fpage_t*, L4_Word_t)’:
../../include/l4/types.h:195:14: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:3’ may change value [-Wconversion]
     f->X.rwx |= rwx;
     ~~~~~~~~~^~~~~~
../../include/l4/types.h: In function ‘L4_Fpage_t L4_FpageRemoveRights(L4_Fpage_t, L4_Word_t)’:
../../include/l4/types.h:201:13: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:3’ may change value [-Wconversion]
     f.X.rwx &= ~rwx;
     ~~~~~~~~^~~~~~~
../../include/l4/types.h: In function ‘L4_Fpage_t L4_FpageRemoveRightsFrom(L4_Fpage_t*, L4_Word_t)’:
../../include/l4/types.h:207:14: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:3’ may change value [-Wconversion]
     f->X.rwx &= ~rwx;
     ~~~~~~~~~^~~~~~~
../../include/l4/types.h: In function ‘L4_Fpage_t L4_Fpage(L4_Word_t, L4_Word_t)’:
../../include/l4/types.h:238:39: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     fp.X.s = (1UL << msb) < FpageSize ? msb + 1 : msb;
              ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
../../include/l4/types.h:238:39: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
../../include/l4/types.h: In function ‘L4_Fpage_t L4_FpageLog2(L4_Word_t, int)’:
../../include/l4/types.h:247:14: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     fp.X.s = FpageSize;
              ^~~~~~~~~
../../include/l4/types.h: In function ‘L4_ThreadId_t L4_GlobalId(L4_Word_t, L4_Word_t)’:
../../include/l4/types.h:303:28: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     t.global.X.thread_no = threadno;
                            ^~~~~~~~
../../include/l4/types.h:304:26: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Wconversion]
     t.global.X.version = version;
                          ^~~~~~~
../../include/l4/types.h: In function ‘L4_Time_t L4_TimePeriod(L4_Word64_t)’:
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:506:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (10); __L4_TRY_EXPONENT (11);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:506:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (10); __L4_TRY_EXPONENT (11);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:507:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (12); __L4_TRY_EXPONENT (13);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:507:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (12); __L4_TRY_EXPONENT (13);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:508:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (14); __L4_TRY_EXPONENT (15);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:508:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (14); __L4_TRY_EXPONENT (15);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:509:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (16); __L4_TRY_EXPONENT (17);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:509:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (16); __L4_TRY_EXPONENT (17);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:510:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (18); __L4_TRY_EXPONENT (19);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:510:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (18); __L4_TRY_EXPONENT (19);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:511:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (20); __L4_TRY_EXPONENT (21);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:511:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (20); __L4_TRY_EXPONENT (21);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:512:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (22); __L4_TRY_EXPONENT (23);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:512:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (22); __L4_TRY_EXPONENT (23);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:513:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (24); __L4_TRY_EXPONENT (25);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:513:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (24); __L4_TRY_EXPONENT (25);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:514:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (26); __L4_TRY_EXPONENT (27);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:514:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (26); __L4_TRY_EXPONENT (27);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:515:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (28); __L4_TRY_EXPONENT (29);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:515:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (28); __L4_TRY_EXPONENT (29);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:516:2: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (30); __L4_TRY_EXPONENT (31);
  ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:499:48: warning: conversion from ‘L4_Word64_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (N - 10, microseconds >> (N - 10))
                                   ~~~~~~~~~~~~~^~~~~~~~~~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:516:26: note: in expansion of macro ‘__L4_TRY_EXPONENT’
  __L4_TRY_EXPONENT (30); __L4_TRY_EXPONENT (31);
                          ^~~~~~~~~~~~~~~~~
../../include/l4/types.h:527:35: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘short unsigned int:10’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (l4_exp, man);
                                   ^~~
../../include/l4/types.h:496:23: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                       ^~~
../../include/l4/types.h:527:27: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:5’ may change value [-Wconversion]
      __L4_SET_TIMEPERIOD (l4_exp, man);
                           ^~~~~~
../../include/l4/types.h:496:44: note: in definition of macro ‘__L4_SET_TIMEPERIOD’
  do { time.period.m = man; time.period.e = exp; } while (0)
                                            ^~~
In file included from ../../include/l4/message.h:37,
                 from ../../include/l4/powerpc64/syscalls.h:36,
                 from ../../include/l4/kip.h:36,
                 from powerpc64.cc:32:
../../include/l4/powerpc64/vregs.h: In function ‘void L4_Set_CopFlag(L4_Word_t)’:
../../include/l4/powerpc64/vregs.h:165:15: warning: conversion from ‘int’ to ‘L4_Word8_t’ {aka ‘unsigned char’} may change value [-Wconversion]
     COP_FLAGS |= (1 << n);
               ^
../../include/l4/powerpc64/vregs.h: In function ‘void L4_Clr_CopFlag(L4_Word_t)’:
../../include/l4/powerpc64/vregs.h:170:15: warning: conversion from ‘int’ to ‘L4_Word8_t’ {aka ‘unsigned char’} may change value [-Wconversion]
     COP_FLAGS &= ~(1 << n);
               ^
../../include/l4/powerpc64/vregs.h: In function ‘L4_Bool_t L4_DisablePreemptionFaultException()’:
../../include/l4/powerpc64/vregs.h:185:19: warning: conversion from ‘int’ to ‘L4_Word8_t’ {aka ‘unsigned char’} may change value [-Wconversion]
     PREEMPT_FLAGS &= ~(1 << 5);
                   ^
../../include/l4/powerpc64/vregs.h: In function ‘L4_Bool_t L4_DisablePreemption()’:
../../include/l4/powerpc64/vregs.h:199:19: warning: conversion from ‘int’ to ‘L4_Word8_t’ {aka ‘unsigned char’} may change value [-Wconversion]
     PREEMPT_FLAGS &= ~(1 << 6);
                   ^
In file included from ../../include/l4/powerpc64/syscalls.h:36,
                 from ../../include/l4/kip.h:36,
                 from powerpc64.cc:32:
../../include/l4/message.h: In function ‘void L4_Set_Label(L4_MsgTag_t*, L4_Word_t)’:
../../include/l4/message.h:144:18: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:48’ may change value [-Wconversion]
     t->X.label = label;
                  ^~~~~
../../include/l4/message.h: In function ‘L4_MapItem_t L4_MapItem(L4_Fpage_t, L4_Word_t)’:
../../include/l4/message.h:191:31: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
     item.X.snd_base = SndBase >> 10;
                       ~~~~~~~~^~~~~
../../include/l4/message.h: In function ‘L4_GrantItem_t L4_GrantItem(L4_Fpage_t, L4_Word_t)’:
../../include/l4/message.h:264:31: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:54’ may change value [-Wconversion]
     item.X.snd_base = SndBase >> 10;
                       ~~~~~~~~^~~~~
../../include/l4/message.h: In function ‘void L4_CtrlXferItemInit(L4_CtrlXferItem_t*, L4_Word_t)’:
../../include/l4/message.h:489:15: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char’ may change value [-Wconversion]
     c->X.id = id;
               ^~
../../include/l4/message.h: In function ‘void L4_FaultConfCtrlXferItemInit(L4_CtrlXferItem_t*, L4_Word_t, L4_Word_t)’:
../../include/l4/message.h:498:15: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char’ may change value [-Wconversion]
     c->X.id = fault_id;
               ^~~~~~~~
../../include/l4/message.h:499:17: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:52’ may change value [-Wconversion]
     c->X.mask = fault_mask;
                 ^~~~~~~~~~
../../include/l4/message.h: In function ‘void L4_MsgPut(L4_Msg_t*, L4_Word_t, int, L4_Word_t*, int, void*)’:
../../include/l4/message.h:620:24: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:48’ may change value [-Wconversion]
     msg->tag.X.label = label;
                        ^~~~~
../../include/l4/message.h:622:20: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     msg->tag.X.u = u;
                    ^
../../include/l4/message.h:623:20: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     msg->tag.X.t = t;
                    ^
../../include/l4/message.h: In function ‘void L4_Set_MsgLabel(L4_Msg_t*, L4_Word_t)’:
../../include/l4/message.h:656:24: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘long unsigned int:48’ may change value [-Wconversion]
     msg->tag.X.label = label;
                        ^~~~~
../../include/l4/message.h: In function ‘void L4_MsgAppendMapItem(L4_Msg_t*, L4_MapItem_t)’:
../../include/l4/message.h:690:18: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     msg->tag.X.t += 2;
     ~~~~~~~~~~~~~^~~~
../../include/l4/message.h: In function ‘void L4_MsgAppendGrantItem(L4_Msg_t*, L4_GrantItem_t)’:
../../include/l4/message.h:697:18: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     msg->tag.X.t += 2;
     ~~~~~~~~~~~~~^~~~
../../include/l4/message.h: In function ‘void L4_MsgAppendSimpleStringItem(L4_Msg_t*, L4_StringItem_t)’:
../../include/l4/message.h:706:18: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     msg->tag.X.t += 2;
     ~~~~~~~~~~~~~^~~~
../../include/l4/message.h: In function ‘void L4_MsgAppendStringItem(L4_Msg_t*, L4_StringItem_t*)’:
../../include/l4/message.h:715:48: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘int’ may change value [-Wconversion]
     int size = ((L4_Word_t) e - (L4_Word_t) s) / sizeof (L4_Word_t);
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
../../include/l4/message.h:717:18: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     msg->tag.X.t += size;
     ~~~~~~~~~~~~~^~~~~~~
../../include/l4/message.h: In function ‘void L4_MsgAppendCtrlXferItem(L4_Msg_t*, L4_CtrlXferItem_t*)’:
../../include/l4/message.h:727:15: error: ‘__L4_Lsb’ was not declared in this scope
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
../../include/l4/message.h:727:15: note: suggested alternative: ‘__L4_Msb’
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
               __L4_Msb
../../include/l4/message.h:734:15: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
  msg->tag.X.t += 1 + num;
  ~~~~~~~~~~~~~^~~~~~~~~~
../../include/l4/message.h: In function ‘void L4_AppendFaultConfCtrlXferItems(L4_Msg_t*, L4_Word64_t, L4_Word_t, L4_Word_t)’:
../../include/l4/message.h:746:20: error: ‘__L4_Lsb’ was not declared in this scope
     for (fault_id+=__L4_Lsb(fault_id_mask_low); fault_id_mask_low != 0;
                    ^~~~~~~~
../../include/l4/message.h:746:20: note: suggested alternative: ‘__L4_Msb’
     for (fault_id+=__L4_Lsb(fault_id_mask_low); fault_id_mask_low != 0;
                    ^~~~~~~~
                    __L4_Msb
../../include/l4/message.h:755:20: error: ‘__L4_Lsb’ was not declared in this scope
     for (fault_id+=__L4_Lsb(fault_id_mask_high); fault_id_mask_high != 0;
                    ^~~~~~~~
../../include/l4/message.h:755:20: note: suggested alternative: ‘__L4_Msb’
     for (fault_id+=__L4_Lsb(fault_id_mask_high); fault_id_mask_high != 0;
                    ^~~~~~~~
                    __L4_Msb
../../include/l4/message.h:763:16: warning: conversion from ‘L4_Word_t’ {aka ‘long unsigned int’} to ‘unsigned char:1’ may change value [-Wconversion]
     item.X.C = C;
                ^
../../include/l4/message.h: In function ‘void L4_MsgPutCtrlXferItem(L4_Msg_t*, L4_Word_t, L4_CtrlXferItem_t*)’:
../../include/l4/message.h:808:15: error: ‘__L4_Lsb’ was not declared in this scope
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
../../include/l4/message.h:808:15: note: suggested alternative: ‘__L4_Msb’
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
               __L4_Msb
../../include/l4/message.h: In function ‘L4_Word_t L4_MsgGetCtrlXferItem(L4_Msg_t*, L4_Word_t, L4_CtrlXferItem_t*)’:
../../include/l4/message.h:862:15: error: ‘__L4_Lsb’ was not declared in this scope
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
../../include/l4/message.h:862:15: note: suggested alternative: ‘__L4_Msb’
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
               __L4_Msb
In file included from ../../include/l4/kip.h:36,
                 from powerpc64.cc:32:
../../include/l4/powerpc64/syscalls.h: In function ‘L4_Clock_t L4_SystemClock()’:
../../include/l4/powerpc64/syscalls.h:178:17: error: address of explicit register variable ‘r3’ requested
     return ( r3 );
                 ^
../../include/l4/powerpc64/syscalls.h:178:17: error: address of explicit register variable ‘r3’ requested
powerpc64.cc: In function ‘void __L4_Init()’:
powerpc64.cc:57:29: error: invalid conversion from ‘void*’ to ‘L4_KernelInterfacePage_t*’ [-fpermissive]
     kip = L4_KernelInterface( NULL, NULL, NULL );
           ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
make: *** [<builtin>: powerpc64] Error 1
[root@fedora28 l4]# 

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

If we suppress the conversion warnings:

[root@fedora28 l4]# make powerpc64
gcc -x c++ -nostdinc -g -O2 -msoft-float -mminimal-toc   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -I../../include -I../.. -I/usr/lib/gcc/ppc64-redhat-linux/8/include   -N -L../../lib -L/usr/lib/gcc/ppc64-redhat-linux/8 -nostdlib    powerpc64.cc   -o powerpc64
In file included from ../../include/l4/powerpc64/syscalls.h:36,
                 from ../../include/l4/kip.h:36,
                 from powerpc64.cc:32:
../../include/l4/message.h: In function ‘void L4_MsgAppendCtrlXferItem(L4_Msg_t*, L4_CtrlXferItem_t*)’:
../../include/l4/message.h:727:15: error: ‘__L4_Lsb’ was not declared in this scope
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
../../include/l4/message.h:727:15: note: suggested alternative: ‘__L4_Msb’
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
               __L4_Msb
../../include/l4/message.h: In function ‘void L4_AppendFaultConfCtrlXferItems(L4_Msg_t*, L4_Word64_t, L4_Word_t, L4_Word_t)’:
../../include/l4/message.h:746:20: error: ‘__L4_Lsb’ was not declared in this scope
     for (fault_id+=__L4_Lsb(fault_id_mask_low); fault_id_mask_low != 0;
                    ^~~~~~~~
../../include/l4/message.h:746:20: note: suggested alternative: ‘__L4_Msb’
     for (fault_id+=__L4_Lsb(fault_id_mask_low); fault_id_mask_low != 0;
                    ^~~~~~~~
                    __L4_Msb
../../include/l4/message.h:755:20: error: ‘__L4_Lsb’ was not declared in this scope
     for (fault_id+=__L4_Lsb(fault_id_mask_high); fault_id_mask_high != 0;
                    ^~~~~~~~
../../include/l4/message.h:755:20: note: suggested alternative: ‘__L4_Msb’
     for (fault_id+=__L4_Lsb(fault_id_mask_high); fault_id_mask_high != 0;
                    ^~~~~~~~
                    __L4_Msb
../../include/l4/message.h: In function ‘void L4_MsgPutCtrlXferItem(L4_Msg_t*, L4_Word_t, L4_CtrlXferItem_t*)’:
../../include/l4/message.h:808:15: error: ‘__L4_Lsb’ was not declared in this scope
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
../../include/l4/message.h:808:15: note: suggested alternative: ‘__L4_Msb’
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
               __L4_Msb
../../include/l4/message.h: In function ‘L4_Word_t L4_MsgGetCtrlXferItem(L4_Msg_t*, L4_Word_t, L4_CtrlXferItem_t*)’:
../../include/l4/message.h:862:15: error: ‘__L4_Lsb’ was not declared in this scope
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
../../include/l4/message.h:862:15: note: suggested alternative: ‘__L4_Msb’
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
               __L4_Msb
In file included from ../../include/l4/kip.h:36,
                 from powerpc64.cc:32:
../../include/l4/powerpc64/syscalls.h: In function ‘L4_Clock_t L4_SystemClock()’:
../../include/l4/powerpc64/syscalls.h:178:17: error: address of explicit register variable ‘r3’ requested
     return ( r3 );
                 ^
../../include/l4/powerpc64/syscalls.h:178:17: error: address of explicit register variable ‘r3’ requested
powerpc64.cc: In function ‘void __L4_Init()’:
powerpc64.cc:60:29: error: invalid conversion from ‘void*’ to ‘L4_KernelInterfacePage_t*’ [-fpermissive]
     kip = L4_KernelInterface( NULL, NULL, NULL );
           ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
make: *** [<builtin>: powerpc64] Error 1
[root@fedora28 l4]# 

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

Looks like these aren't the system includes, but the ones in /root/Orion/user/include/l4/powerpc64, whilst we're going down this rabbit hole...

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

Aha!

Looking in user/, we have a include/l4/tracebuffer.h, plus a include/l4/powerpc/tracebuffer.h, but not a include/l4/powerpc64/tracebuffer.h, for some reason. :(

I also pulled across the NICTA version of /user/include/l4/powerpc64/syscalls.h, which will probably break stuff:

===> debug.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/ppc64-redhat-linux/8/include   -nostdinc -g -O2 -msoft-float -mminimal-toc   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c debug.cc -o debug.o
In file included from ../../include/l4/kip.h:36,
                 from debug.cc:31:
../../include/l4/powerpc64/syscalls.h:35:10: error: #include expects "FILENAME" or <FILENAME>
 #include INC_ARCH(frame.h)
          ^~~~~~~~
../../include/l4/powerpc64/syscalls.h:36:10: error: #include expects "FILENAME" or <FILENAME>
 #include INC_GLUE(abi.h)
          ^~~~~~~~
In file included from ../../include/l4/kip.h:35,
                 from debug.cc:31:
../../include/l4/types.h:66:29: fatal error: l4/powerpc64/tracebuffer.h: No such file or directory
 #define __L4_INC_ARCH(file) <l4/__L4_ARCH__/file>
                             ^
compilation terminated.

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

Oops, commented on the wrong issue - #15 (comment) is the latest status...

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

Userland looks to build OK-ish, barring pingpong linking, on x86:

tyson@tyson-Lenovo-ideapad-120S-14IAP:~/Orion/user$ make
make[1]: Entering directory '/home/tyson/Orion/user/lib'
make[2]: Entering directory '/home/tyson/Orion/user/lib/l4'
===> debug.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c debug.cc -o debug.o
===> amd64.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c amd64.cc -o amd64.o
===> Linking ./libl4.a
ar cru libl4.a  debug.o amd64.o  
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libl4.a
cp libl4.a ../../lib/libl4.a
make[2]: Leaving directory '/home/tyson/Orion/user/lib/l4'
make[2]: Entering directory '/home/tyson/Orion/user/lib/io'
===> Making dependencies in .
===> get_hex.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c get_hex.cc -o get_hex.o
In file included from get_hex.cc:33:
../../include/l4io.h:46:6: warning: declaration of ‘void putc(int)’ conflicts with built-in declaration ‘int putc(int, void*)’ [-Wbuiltin-declaration-mismatch]
 void putc(int c);
      ^~~~
===> print.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c print.cc -o print.o
In file included from print.cc:34:
../../include/l4io.h:46:6: warning: declaration of ‘void putc(int)’ conflicts with built-in declaration ‘int putc(int, void*)’ [-Wbuiltin-declaration-mismatch]
 void putc(int c);
      ^~~~
print.cc: In function ‘int __l4_vsnprintf(char*, L4_Size_t, const char*, __va_list_tag*)’:
print.cc:111:25: warning: variable ‘uval2’ set but not used [-Wunused-but-set-variable]
     unsigned long uval, uval2;
                         ^~~~~
In file included from print.cc:35:
lib.h: At global scope:
lib.h:112:1: warning: ‘char* strchr(const char*, int)’ defined but not used [-Wunused-function]
 strchr(const char *p, int ch)
 ^~~~~~
lib.h:93:1: warning: ‘char* strstr(const char*, const char*)’ defined but not used [-Wunused-function]
 strstr(const char *s, const char *find)
 ^~~~~~
lib.h:67:1: warning: ‘int strcmp(const char*, const char*)’ defined but not used [-Wunused-function]
 strcmp(const char *s1, const char *s2)
 ^~~~~~
lib.h:44:13: warning: ‘void strcpy(char*, const char*)’ defined but not used [-Wunused-function]
 static void strcpy( char *dst, const char *src )
             ^~~~~~
===> amd64.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c amd64.cc -o amd64.o
amd64.cc:38:17: warning: declaration of ‘void putc(int)’ conflicts with built-in declaration ‘int putc(int, void*)’ [-Wbuiltin-declaration-mismatch]
 extern "C" void putc (int c) __attribute__ ((weak, alias ("__l4_putc")));
                 ^~~~
===> Linking ./libio.a
ar cru libio.a  get_hex.o print.o amd64.o  
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libio.a
cp libio.a ../../lib/libio.a
make[2]: Leaving directory '/home/tyson/Orion/user/lib/io'
make[1]: Leaving directory '/home/tyson/Orion/user/lib'
make[1]: Entering directory '/home/tyson/Orion/user/serv'
make[2]: Entering directory '/home/tyson/Orion/user/serv/sigma0'
===> Making dependencies in .
===> crt0-amd64.S
gcc -I../../include -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -c crt0-amd64.S -o crt0-amd64.o
===> sigma0_io.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c sigma0_io.cc -o sigma0_io.o
In file included from sigma0_io.cc:36:
../../include/l4io.h:46:6: warning: declaration of ‘void putc(int)’ conflicts with built-in declaration ‘int putc(int, void*)’ [-Wbuiltin-declaration-mismatch]
 void putc(int c);
      ^~~~
===> sigma0.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c sigma0.cc -o sigma0.o
In file included from sigma0.cc:36:
../../include/l4io.h:46:6: warning: declaration of ‘void putc(int)’ conflicts with built-in declaration ‘int putc(int, void*)’ [-Wbuiltin-declaration-mismatch]
 void putc(int c);
      ^~~~
sigma0.cc:64:1: warning: declaration of ‘void* memcpy(void*, const void*, unsigned int)’ conflicts with built-in declaration ‘void* memcpy(void*, const void*, long unsigned int)’ [-Wbuiltin-declaration-mismatch]
 memcpy (void * dst, const void * src, unsigned int len)
 ^~~~~~
===> sigma0_mem.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c sigma0_mem.cc -o sigma0_mem.o
In file included from sigma0_mem.cc:35:
../../include/l4io.h:46:6: warning: declaration of ‘void putc(int)’ conflicts with built-in declaration ‘int putc(int, void*)’ [-Wbuiltin-declaration-mismatch]
 void putc(int c);
      ^~~~
===> region.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c region.cc -o region.o
In file included from region.cc:34:
../../include/l4io.h:46:6: warning: declaration of ‘void putc(int)’ conflicts with built-in declaration ‘int putc(int, void*)’ [-Wbuiltin-declaration-mismatch]
 void putc(int c);
      ^~~~
===> Linking ./sigma0
ld -e_start -N -L../../lib -L/usr/lib/gcc/x86_64-linux-gnu/8 -nostdlib  -melf_x86_64  -Ttext=00f00000 crt0-amd64.o sigma0_io.o sigma0.o sigma0_mem.o region.o    -ll4 -lio -lgcc -o sigma0
make[2]: Leaving directory '/home/tyson/Orion/user/serv/sigma0'
make[1]: Leaving directory '/home/tyson/Orion/user/serv'
make[1]: Entering directory '/home/tyson/Orion/user/apps'
make[2]: Entering directory '/home/tyson/Orion/user/apps/bench'
make[3]: Entering directory '/home/tyson/Orion/user/apps/bench/pingpong'
===> Making dependencies in .
===> crt0-amd64.S
gcc -I../../../include -I../../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -c crt0-amd64.S -o crt0-amd64.o
===> pingpong.cc
gcc -x c++ -I../../../include -I../../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include   -nostdinc -g -O2 -m64 -mno-red-zone   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c pingpong.cc -o pingpong.o
In file included from pingpong.cc:38:
../../../include/l4io.h:46:6: warning: declaration of ‘void putc(int)’ conflicts with built-in declaration ‘int putc(int, void*)’ [-Wbuiltin-declaration-mismatch]
 void putc(int c);
      ^~~~
pingpong.cc:83:17: warning: declaration of ‘void memset(char*, char, int)’ conflicts with built-in declaration ‘void* memset(void*, int, long unsigned int)’ [-Wbuiltin-declaration-mismatch]
 extern "C" void memset (char * p, char c, int size)
                 ^~~~~~
pingpong.cc: In function ‘void ping_thread()’:
pingpong.cc:218:19: warning: variable ‘pong_ltid’ set but not used [-Wunused-but-set-variable]
     L4_ThreadId_t pong_ltid = L4_LocalId (pong_tid);
                   ^~~~~~~~~
pingpong.cc: In function ‘int main()’:
pingpong.cc:416:21: warning: variable ‘q’ set but not used [-Wunused-but-set-variable]
  volatile L4_Word_t q;
                     ^
pingpong.cc:452:54: warning: variable ‘result’ set but not used [-Wunused-but-set-variable]
  L4_Word_t sched_control = 0, old_sched_control = 0, result = 0;
                                                      ^~~~~~
In file included from ../../../include/l4/kip.h:36,
                 from pingpong.cc:34:
../../../include/l4/amd64/syscalls.h: In function ‘L4_Clock_t L4_SystemClock()’:
../../../include/l4/amd64/syscalls.h:197:19: warning: ‘ret.L4_Clock_t::raw’ is used uninitialized in this function [-Wuninitialized]
  [dest]  "0" (ret.raw)  /* %1 RAX */
               ~~~~^~~
../../../include/l4/amd64/syscalls.h: In function ‘void ping_thread()’:
../../../include/l4/amd64/syscalls.h:201:3: warning: ‘ret.L4_Clock_t::raw’ is used uninitialized in this function [-Wuninitialized]
  );
   ^
../../../include/l4/amd64/syscalls.h:187:16: note: ‘ret.L4_Clock_t::raw’ was declared here
     L4_Clock_t ret;
                ^~~
../../../include/l4/amd64/syscalls.h:201:3: warning: ‘ret.L4_Clock_t::raw’ is used uninitialized in this function [-Wuninitialized]
  );
   ^
../../../include/l4/amd64/syscalls.h:187:16: note: ‘ret.L4_Clock_t::raw’ was declared here
     L4_Clock_t ret;
                ^~~
gcc -I../../../include -I../../.. -I/usr/lib/gcc/x86_64-linux-gnu/8/include    -m32 -fno-exceptions  -fno-stack-protector -lssp  -fno-stack-protector -lssp -x c++ -c pingpong-amd64-32.cc -o pingpong-amd64-32.o
objcopy -g -O elf64-x86-64 pingpong-amd64-32.o pingpong-amd64-32.o
===> Linking ./pingpong
ld -e_start -N -L../../../lib -L/usr/lib/gcc/x86_64-linux-gnu/8 -nostdlib  -melf_x86_64  -Ttext=01000000  -fno-stack-protector -lssp crt0-amd64.o pingpong.o pingpong-amd64-32.o    -ll4 -lio -lgcc -o pingpong
ld: -f may not be used without -shared
make[3]: *** [../../../Mk/l4.prog.mk:54: pingpong] Error 1
make[3]: Leaving directory '/home/tyson/Orion/user/apps/bench/pingpong'
make[2]: *** [../../Mk/l4.subdir.mk:41: subdirs-all] Error 2
make[2]: Leaving directory '/home/tyson/Orion/user/apps/bench'
make[1]: *** [../Mk/l4.subdir.mk:41: subdirs-all] Error 2
make[1]: Leaving directory '/home/tyson/Orion/user/apps'
make: *** [Mk/l4.subdir.mk:41: subdirs-all] Error 2
tyson@tyson-Lenovo-ideapad-120S-14IAP:~/Orion/user$ git commit -am "Accidental x86 build"
[master ceabcad] Accidental x86 build
 3 files changed, 144 insertions(+), 135 deletions(-)
tyson@tyson-Lenovo-ideapad-120S-14IAP:~/Orion/user$ git push --all
Username for 'https://github.com': vmlemon
Password for 'https://[email protected]': 
Enumerating objects: 11, done.
Counting objects: 100% (11/11), done.
Delta compression using up to 2 threads
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 2.34 KiB | 2.34 MiB/s, done.
Total 6 (delta 5), reused 0 (delta 0)
remote: Resolving deltas: 100% (5/5), completed with 5 local objects.
To https://github.com/vmlemon/Orion
   a208edc..ceabcad  master -> master
tyson@tyson-Lenovo-ideapad-120S-14IAP:~/Orion/user$ make clean
make[1]: Entering directory '/home/tyson/Orion/user/lib'
make[2]: Entering directory '/home/tyson/Orion/user/lib/l4'
rm -f *~ \#* libl4.a  debug.o amd64.o   .depend
make[2]: Leaving directory '/home/tyson/Orion/user/lib/l4'
make[2]: Entering directory '/home/tyson/Orion/user/lib/io'
rm -f *~ \#* libio.a  get_hex.o print.o amd64.o   .depend
make[2]: Leaving directory '/home/tyson/Orion/user/lib/io'
rm -f *.a
make[1]: Leaving directory '/home/tyson/Orion/user/lib'
make[1]: Entering directory '/home/tyson/Orion/user/serv'
make[2]: Entering directory '/home/tyson/Orion/user/serv/sigma0'
rm -f *~ \#* sigma0 crt0-amd64.o sigma0_io.o sigma0.o sigma0_mem.o region.o   .depend
make[2]: Leaving directory '/home/tyson/Orion/user/serv/sigma0'
make[1]: Leaving directory '/home/tyson/Orion/user/serv'
make[1]: Entering directory '/home/tyson/Orion/user/apps'
make[2]: Entering directory '/home/tyson/Orion/user/apps/bench'
make[3]: Entering directory '/home/tyson/Orion/user/apps/bench/pingpong'
rm -f *~ \#* pingpong crt0-amd64.o pingpong.o pingpong-amd64-32.o   .depend
make[3]: Leaving directory '/home/tyson/Orion/user/apps/bench/pingpong'
make[2]: Leaving directory '/home/tyson/Orion/user/apps/bench'
make[2]: Entering directory '/home/tyson/Orion/user/apps/grabmem'
===> Making dependencies in .
rm -f *~ \#* grabmem crt0-amd64.o grabmem.o   .depend
make[2]: Leaving directory '/home/tyson/Orion/user/apps/grabmem'
make[2]: Entering directory '/home/tyson/Orion/user/apps/l4test'
===> Making dependencies in .
rm -f *~ \#* l4test amd64/crt0.o main.o assert.o menu.o threads.o string.o ipc.o ipc-string.o ipc-pf.o ipc-smp.o kip.o mem.o sig0.o exreg.o tcontrol.o schedule.o amd64/help.o amd64/tests.o   .depend
rmdir: failed to remove './amd64': Directory not empty
make[2]: *** [Makefile:67: post-clean] Error 1
make[2]: Leaving directory '/home/tyson/Orion/user/apps/l4test'
make[1]: *** [../Mk/l4.subdir.mk:51: subdirs-clean] Error 2
make[1]: Leaving directory '/home/tyson/Orion/user/apps'
make: *** [Mk/l4.subdir.mk:51: subdirs-clean] Error 2
tyson@tyson-Lenovo-ideapad-120S-14IAP:~/Orion/user$ git commit -am "Tidy"
[master 3517b58] Tidy
 1 file changed, 8 deletions(-)
 delete mode 100644 user/lib/l4/.depend
tyson@tyson-Lenovo-ideapad-120S-14IAP:~/Orion/user$ git push --all
Username for 'https://github.com': vmlemon
Password for 'https://[email protected]': 
Enumerating objects: 9, done.
Counting objects: 100% (9/9), done.
Delta compression using up to 2 threads
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 406 bytes | 406.00 KiB/s, done.
Total 5 (delta 4), reused 0 (delta 0)
remote: Resolving deltas: 100% (4/4), completed with 4 local objects.
To https://github.com/vmlemon/Orion
   ceabcad..3517b58  master -> master
tyson@tyson-Lenovo-ideapad-120S-14IAP:~/Orion/user$ 

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

On PPC, we now get to:

[root@fedora28 l4]# make
===> debug.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/ppc64-redhat-linux/8/include   -nostdinc -g -O2 -msoft-float -mminimal-toc   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c debug.cc -o debug.o
In file included from ../../include/l4/powerpc64/syscalls.h:36,
                 from ../../include/l4/kip.h:36,
                 from debug.cc:31:
../../include/l4/message.h: In function ‘void L4_MsgAppendCtrlXferItem(L4_Msg_t*, L4_CtrlXferItem_t*)’:
../../include/l4/message.h:727:15: error: ‘__L4_Lsb’ was not declared in this scope
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
../../include/l4/message.h:727:15: note: suggested alternative: ‘__L4_Msb’
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
               __L4_Msb
../../include/l4/message.h: In function ‘void L4_AppendFaultConfCtrlXferItems(L4_Msg_t*, L4_Word64_t, L4_Word_t, L4_Word_t)’:
../../include/l4/message.h:746:20: error: ‘__L4_Lsb’ was not declared in this scope
     for (fault_id+=__L4_Lsb(fault_id_mask_low); fault_id_mask_low != 0;
                    ^~~~~~~~
../../include/l4/message.h:746:20: note: suggested alternative: ‘__L4_Msb’
     for (fault_id+=__L4_Lsb(fault_id_mask_low); fault_id_mask_low != 0;
                    ^~~~~~~~
                    __L4_Msb
../../include/l4/message.h:755:20: error: ‘__L4_Lsb’ was not declared in this scope
     for (fault_id+=__L4_Lsb(fault_id_mask_high); fault_id_mask_high != 0;
                    ^~~~~~~~
../../include/l4/message.h:755:20: note: suggested alternative: ‘__L4_Msb’
     for (fault_id+=__L4_Lsb(fault_id_mask_high); fault_id_mask_high != 0;
                    ^~~~~~~~
                    __L4_Msb
../../include/l4/message.h: In function ‘void L4_MsgPutCtrlXferItem(L4_Msg_t*, L4_Word_t, L4_CtrlXferItem_t*)’:
../../include/l4/message.h:808:15: error: ‘__L4_Lsb’ was not declared in this scope
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
../../include/l4/message.h:808:15: note: suggested alternative: ‘__L4_Msb’
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
               __L4_Msb
../../include/l4/message.h: In function ‘L4_Word_t L4_MsgGetCtrlXferItem(L4_Msg_t*, L4_Word_t, L4_CtrlXferItem_t*)’:
../../include/l4/message.h:862:15: error: ‘__L4_Lsb’ was not declared in this scope
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
../../include/l4/message.h:862:15: note: suggested alternative: ‘__L4_Msb’
     for (reg+=__L4_Lsb(mask); mask!=0; mask>>=__L4_Lsb(mask)+1,reg+=__L4_Lsb(mask)+1,num++)
               ^~~~~~~~
               __L4_Msb
In file included from ../../include/l4/kip.h:36,
                 from debug.cc:31:
../../include/l4/powerpc64/syscalls.h: In function ‘L4_Clock_t L4_SystemClock()’:
../../include/l4/powerpc64/syscalls.h:178:17: error: address of explicit register variable ‘r3’ requested
     return ( r3 );
                 ^
../../include/l4/powerpc64/syscalls.h:178:17: error: address of explicit register variable ‘r3’ requested
make: *** [../../Mk/l4.build.mk:58: debug.o] Error 1
[root@fedora28 l4]# 

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

If we put in a stub version, at arch/powerpc64/tracebuffer.h, to knockout the check (we already NOP'd out the trace calls in src/generic/kmemory.cc:

===> Building dependencies
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ && gcc34 -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -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:53:48: macro "SYS_IPC" requires 3 arguments, but only 2 given
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: expected constructor, destructor, or type conversion before ';' token
/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: In member function `msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:738: error: `sys_ipc' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:738: warning: unused variable 'sys_ipc'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/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
===> src/generic/lib.cc
cd src/generic/ && gcc34 -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -c /root/Orion/kernel/src/generic/lib.cc
===> src/generic/kmemory.cc
cd src/generic/ && gcc34 -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -c /root/Orion/kernel/src/generic/kmemory.cc
===> src/generic/traceids.cc
cd src/generic/ && gcc34 -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -c /root/Orion/kernel/src/generic/traceids.cc
===> src/generic/tracebuffer.cc
cd src/generic/ && gcc34 -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -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:53:48: macro "SYS_IPC" requires 3 arguments, but only 2 given
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: expected constructor, destructor, or type conversion before ';' token
/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: In member function `msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:738: error: `sys_ipc' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:738: warning: unused variable 'sys_ipc'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/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/kdb/tracebuffer.h:37,
                 from /root/Orion/kernel/src/kdb/tracepoints.h:37,
                 from /root/Orion/kernel/src/api/v4/schedule.h:39,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:87:
/root/Orion/kernel/src/api/v4/cpu.h: In function `cpuid_t get_current_cpu()':
/root/Orion/kernel/src/api/v4/cpu.h:70: error: redefinition of `cpuid_t get_current_cpu()'
/root/Orion/kernel/src/api/v4/tcb.h:723: error: `cpuid_t get_current_cpu()' previously defined here
/root/Orion/kernel/src/generic/tracebuffer.cc: In function `void init_tracebuffer()':
/root/Orion/kernel/src/generic/tracebuffer.cc:108: error: `TBUFF_SIZE' was not declared in this scope
/root/Orion/kernel/src/generic/tracebuffer.cc: In function `void tb_log_event(word_t)':
/root/Orion/kernel/src/generic/tracebuffer.cc:247: error: `EVENT' was not declared in this scope
/root/Orion/kernel/src/generic/tracebuffer.cc:251: error: `EVENT_major' was not declared in this scope
/root/Orion/kernel/src/generic/tracebuffer.cc:247: warning: unused variable 'EVENT'
/root/Orion/kernel/src/generic/tracebuffer.cc:251: warning: unused variable 'EVENT_major'
make[1]: *** [/root/Orion/kernel/Mk/Makeconf:208: src/generic/tracebuffer.o] Error 1
make[1]: Leaving directory '/root/Orion/kernel/rpb8'
make: *** [Makefile:38: all] Error 2
[root@fedora28 rpb8]# vim ../src/generic/kmemory.cc
[root@fedora28 rpb8]# 

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

Whilst switching back over to the x86 port, I noticed that we had new KDB headers, in src/include, so I started porting them over, which currently gets us to this, with the newer PPC compiler:

[root@fedora28 rpb8]# make
make[1]: Entering directory '/root/Orion/kernel/rpb8'
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ &&  gcc  -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -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:53:48: error: macro "SYS_IPC" requires 3 arguments, but only 2 given
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
                                                ^
/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/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:1: error: ‘SYS_IPC’ does not name a type
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
 ^~~~~~~
/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/kmemory.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -c /root/Orion/kernel/src/generic/kmemory.cc
===> src/generic/tracebuffer.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -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:53:48: error: macro "SYS_IPC" requires 3 arguments, but only 2 given
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
                                                ^
/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/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:1: error: ‘SYS_IPC’ does not name a type
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
 ^~~~~~~
/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);
          ^~~~~~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc: In function ‘void init_tracebuffer()’:
/root/Orion/kernel/src/generic/tracebuffer.cc:108:62: error: ‘TBUFF_SIZE’ was not declared in this scope
     trace_buffer = (trace_buffer_t*) kmem.alloc( kmem_trace, TBUFF_SIZE );
                                                              ^~~~~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc:108:62: note: suggested alternative: ‘TBUF_ID’
     trace_buffer = (trace_buffer_t*) kmem.alloc( kmem_trace, TBUFF_SIZE );
                                                              ^~~~~~~~~~
                                                              TBUF_ID
/root/Orion/kernel/src/generic/tracebuffer.cc:118:43: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
     buffer_first = sizeof(trace_buffer_t) + 7 & (~7ul);
                    ~~~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /root/Orion/kernel/src/debug.h:180,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:84:
/root/Orion/kernel/src/tracebuffer.h:86:48: warning: the result of the conversion is unspecified because ‘11’ is outside the range of type ‘memdesc_t::type_e’ [-Wconversion]
 #define TBUF_MEMDESC_TYPE   (memdesc_t::type_e)0xb
                                                ^~~
/root/Orion/kernel/src/generic/tracebuffer.cc:137:35: note: in expansion of macro ‘TBUF_MEMDESC_TYPE’
     get_kip()->memory_info.insert(TBUF_MEMDESC_TYPE, false,
                                   ^~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc: In function ‘void tb_log_event(word_t)’:
/root/Orion/kernel/src/generic/tracebuffer.cc:249:35: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:7’ may change value [-Wconversion]
     tbe->hdr.x.reclen = entry_size/sizeof(word_t);
                         ~~~~~~~~~~^~~~~~~~~~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc: In function ‘void tb_log_trace(word_t, char*, ...)’:
/root/Orion/kernel/src/generic/tracebuffer.cc:283:21: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int’ may change value [-Wconversion]
     tbe->hdr.x.id = traceid;
                     ^~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc:285:35: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:7’ may change value [-Wconversion]
     tbe->hdr.x.reclen = entry_size/sizeof(word_t);
                         ~~~~~~~~~~^~~~~~~~~~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc:286:23: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char’ may change value [-Wconversion]
     tbe->hdr.x.args = nargs;
                       ^~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc:287:24: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     tbe->hdr.x.major = major;
                        ^~~~~
make[1]: *** [/root/Orion/kernel/Mk/Makeconf:208: src/generic/tracebuffer.o] Error 1
make[1]: Leaving directory '/root/Orion/kernel/rpb8'
make: *** [Makefile:38: all] Error 2
[root@fedora28 rpb8]# 

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

We get to:

===> src/generic/tracebuffer.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -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:53:48: error: macro "SYS_IPC" requires 3 arguments, but only 2 given
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
                                                ^
/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/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:1: error: ‘SYS_IPC’ does not name a type
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
 ^~~~~~~
/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);
          ^~~~~~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc: In function ‘void init_tracebuffer()’:
/root/Orion/kernel/src/generic/tracebuffer.cc:108:62: error: ‘TBUFF_SIZE’ was not declared in this scope
     trace_buffer = (trace_buffer_t*) kmem.alloc( kmem_trace, TBUFF_SIZE );
                                                              ^~~~~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc:108:62: note: suggested alternative: ‘TBUF_ID’
     trace_buffer = (trace_buffer_t*) kmem.alloc( kmem_trace, TBUFF_SIZE );
                                                              ^~~~~~~~~~
                                                              TBUF_ID
/root/Orion/kernel/src/generic/tracebuffer.cc:118:43: warning: suggest parentheses around ‘+’ in operand of ‘&’ [-Wparentheses]
     buffer_first = sizeof(trace_buffer_t) + 7 & (~7ul);
                    ~~~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /root/Orion/kernel/src/debug.h:180,
                 from /root/Orion/kernel/src/generic/tracebuffer.cc:84:
/root/Orion/kernel/src/tracebuffer.h:86:48: warning: the result of the conversion is unspecified because ‘11’ is outside the range of type ‘memdesc_t::type_e’ [-Wconversion]
 #define TBUF_MEMDESC_TYPE   (memdesc_t::type_e)0xb
                                                ^~~
/root/Orion/kernel/src/generic/tracebuffer.cc:137:35: note: in expansion of macro ‘TBUF_MEMDESC_TYPE’
     get_kip()->memory_info.insert(TBUF_MEMDESC_TYPE, false,
                                   ^~~~~~~~~~~~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc: In function ‘void tb_log_event(word_t)’:
/root/Orion/kernel/src/generic/tracebuffer.cc:249:35: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:7’ may change value [-Wconversion]
     tbe->hdr.x.reclen = entry_size/sizeof(word_t);
                         ~~~~~~~~~~^~~~~~~~~~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc: In function ‘void tb_log_trace(word_t, char*, ...)’:
/root/Orion/kernel/src/generic/tracebuffer.cc:283:21: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘short unsigned int’ may change value [-Wconversion]
     tbe->hdr.x.id = traceid;
                     ^~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc:285:35: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:7’ may change value [-Wconversion]
     tbe->hdr.x.reclen = entry_size/sizeof(word_t);
                         ~~~~~~~~~~^~~~~~~~~~~~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc:286:23: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char’ may change value [-Wconversion]
     tbe->hdr.x.args = nargs;
                       ^~~~~
/root/Orion/kernel/src/generic/tracebuffer.cc:287:24: warning: conversion from ‘word_t’ {aka ‘long unsigned int’} to ‘unsigned char:6’ may change value [-Wconversion]
     tbe->hdr.x.major = major;
                        ^~~~~
make[1]: *** [/root/Orion/kernel/Mk/Makeconf:208: src/generic/tracebuffer.o] Error 1
make[1]: Leaving directory '/root/Orion/kernel/rpb8'
make: *** [Makefile:38: all] Error 2
[root@fedora28 rpb8]# 

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

New compiler gives:

[root@fedora28 rpb8]# make clean
make[1]: Entering directory '/root/Orion/kernel/rpb8'
make[1]: Leaving directory '/root/Orion/kernel/rpb8'
[root@fedora28 rpb8]# CC=gcc34 make
make[1]: Entering directory '/root/Orion/kernel/rpb8'
===> Building dependencies
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ && gcc34 -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -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:53:48: macro "SYS_IPC" requires 3 arguments, but only 2 given
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: expected constructor, destructor, or type conversion before ';' token
/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: In member function `msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:738: error: `sys_ipc' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:738: warning: unused variable 'sys_ipc'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/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/lib.cc
cd src/generic/ && gcc34 -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -c /root/Orion/kernel/src/generic/lib.cc
===> src/generic/kmemory.cc
cd src/generic/ && gcc34 -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -c /root/Orion/kernel/src/generic/kmemory.cc
===> src/generic/traceids.cc
cd src/generic/ && gcc34 -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -c /root/Orion/kernel/src/generic/traceids.cc
===> src/generic/tracebuffer.cc
cd src/generic/ && gcc34 -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -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:53:48: macro "SYS_IPC" requires 3 arguments, but only 2 given
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: expected constructor, destructor, or type conversion before ';' token
/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: In member function `msg_tag_t tcb_t::do_ipc(threadid_t, threadid_t, int)':
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:738: error: `sys_ipc' was not declared in this scope
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h:738: warning: unused variable 'sys_ipc'
/root/Orion/kernel/src/glue/v4-powerpc64/tcb.h: At global scope:
/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'
/root/Orion/kernel/src/generic/tracebuffer.cc: In function `void init_tracebuffer()':
/root/Orion/kernel/src/generic/tracebuffer.cc:108: error: `TBUFF_SIZE' was not declared in this scope
make[1]: *** [/root/Orion/kernel/Mk/Makeconf:208: src/generic/tracebuffer.o] Error 1
make[1]: Leaving directory '/root/Orion/kernel/rpb8'
make: *** [Makefile:38: all] Error 2
[root@fedora28 rpb8]# 

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 9, 2019

Trying to turn off debugging, in the config:

make[1]: Entering directory '/root/Orion/kernel/rpb8'
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ &&  gcc  -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -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:53:48: error: macro "SYS_IPC" requires 3 arguments, but only 2 given
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
                                                ^
/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/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:1: error: ‘SYS_IPC’ does not name a type
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
 ^~~~~~~
/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)));
 ^~~~~~~~
make[1]: *** No rule to make target 'menucofnig'.  Stop.
make[1]: Leaving directory '/root/Orion/kernel/rpb8'
make: *** [Makefile:38: menucofnig] Error 2
[root@fedora28 rpb8]# make menuconfig
make[1]: Entering directory '/root/Orion/kernel/rpb8'
make[2]: Entering directory '/root/Orion/kernel/rpb8/config'
Side effects from config.out:
KDB_BREAKIN_BREAK=n (deduced from ARCH_POWERPC64)
Rewriting Makeconf.local ...
make[2]: Leaving directory '/root/Orion/kernel/rpb8/config'
make[1]: Leaving directory '/root/Orion/kernel/rpb8'
[root@fedora28 rpb8]# make
make[1]: Entering directory '/root/Orion/kernel/rpb8'
===> src/glue/v4-powerpc64/asmsyms.cc
cd src/glue/v4-powerpc64/ &&  gcc  -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -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:53:48: error: macro "SYS_IPC" requires 3 arguments, but only 2 given
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
                                                ^
/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/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:1: error: ‘SYS_IPC’ does not name a type
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
 ^~~~~~~
/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/rpb8/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/rpb8/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 -g  -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/rpb8/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/rpb8/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 -g  -c /root/Orion/kernel/src/generic/kmemory.cc
===> src/generic/traceids.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -c /root/Orion/kernel/src/generic/traceids.cc
===> src/generic/tracebuffer.cc
cd src/generic/ &&  gcc  -nostdinc -I/root/Orion/kernel/rpb8/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/rpb8/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 -g  -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:53:48: error: macro "SYS_IPC" requires 3 arguments, but only 2 given
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
                                                ^
/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/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:1: error: ‘SYS_IPC’ does not name a type
 SYS_IPC (threadid_t to_tid, threadid_t from_tid);
 ^~~~~~~
/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/rpb8'
make: *** [Makefile:38: all] Error 2
[root@fedora28 rpb8]# 

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 17, 2019

Current state of libl4 is:

make[1]: Entering directory '/root/Orion/user/lib'
make[2]: Entering directory '/root/Orion/user/lib/l4'
===> Making dependencies in .
===> debug.cc
gcc -x c++ -I../../include -I../.. -I/usr/lib/gcc/ppc64-redhat-linux/8/include   -nostdinc -g -O2 -msoft-float -mminimal-toc   -fno-stack-protector -lssp -O2 -g -Wall -Wshadow   -fno-stack-protector  -Wconversion -fno-exceptions -c debug.cc -o debug.o
In file included from ../../include/l4/kip.h:36,
                 from debug.cc:31:
../../include/l4/powerpc64/syscalls.h: In function ‘L4_Clock_t L4_SystemClock()’:
../../include/l4/powerpc64/syscalls.h:180:17: error: address of explicit register variable ‘r3’ requested
     return ( r3 );
                 ^
../../include/l4/powerpc64/syscalls.h:180:17: error: address of explicit register variable ‘r3’ requested
make[2]: *** [../../Mk/l4.build.mk:58: debug.o] Error 1
make[2]: Leaving directory '/root/Orion/user/lib/l4'
make[1]: *** [../Mk/l4.subdir.mk:41: subdirs-all] Error 2
make[1]: Leaving directory '/root/Orion/user/lib'
make: *** [Mk/l4.subdir.mk:41: subdirs-all] Error 2

@vmlemon
Copy link
Owner Author

vmlemon commented Sep 29, 2019

Status is much the same, as of 29th of September...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant