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

vlang 0.3.5+ broken on PowerPC (macOS, FreeBSD, Linux); while 0.3.4 builds fine #20507

Open
barracuda156 opened this issue Jan 12, 2024 · 5 comments
Labels
Arch: PowerPC Bugs/feature requests, that are related to architecture PowerPC. Bug This tag is applied to issues which reports bugs. Build V build error on any OS/CPU architecture.

Comments

@barracuda156
Copy link

barracuda156 commented Jan 12, 2024

Describe the bug

It is been a few months I compiler vlang last time on macOS ppc, and turns out it is broken now. The last version I built was 2023.15.
0.4.3 fails almost immediately on:

Using local tcc
Using local vc
make[1]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3'
The executable './thirdparty/tcc/tcc.exe' does not work.
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3'
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/cc/opt/local/bin/gcc-mp-13 -Os -arch ppc -std=gnu99 -w -o v1.exe /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c -lm -lpthread -Wl,-headerpad_max_install_names -latomic -L/opt/local/lib -lMacportsLegacySupport -arch ppc
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c: In function '__closure_alloc':
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16418:51: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_alloc'?
16418 | #define _CLOSURE_SIZE (((2*sizeof(void*) > sizeof(__closure_thunk) ? 2*sizeof(void*) : sizeof(__closure_thunk)) + sizeof(void*) - 1) & ~(sizeof(void*) - 1))
      |                                                   ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16528:40: note: in expansion of macro '_CLOSURE_SIZE'
16528 |         int remaining = _V_page_size / _CLOSURE_SIZE;
      |                                        ^~~~~~~~~~~~~

Reproduction Steps

sudo port -v install vlang on a PowerPC system.

Expected Behavior

vlang should build, as it did earlier.

Current Behavior

--->  Building vlang
Executing:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3" && /usr/bin/make -j6 -w all local=true VFLAGS="-v -cg -showcc -show-c-output -prod -cc /opt/local/bin/gcc-mp-13 -cflags -Os" VC=/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc CC="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/cc/opt/local/bin/gcc-mp-13" CXX="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/cxx/opt/local/bin/g++-mp-13" OBJC="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/objc/opt/local/bin/gcc-mp-13" OBJCXX="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/objcxx/opt/local/bin/g++-mp-13" FC="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/fc/opt/local/bin/gfortran-mp-13" F77="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/f77/opt/local/bin/gfortran-mp-13" F90="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/f90/opt/local/bin/gfortran-mp-13" INSTALL="/usr/bin/install -c" 
make: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3'
Using local tcc
Using local vc
make[1]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3'
The executable './thirdparty/tcc/tcc.exe' does not work.
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3'
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/cc/opt/local/bin/gcc-mp-13 -Os -arch ppc -std=gnu99 -w -o v1.exe /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c -lm -lpthread -Wl,-headerpad_max_install_names -latomic -L/opt/local/lib -lMacportsLegacySupport -arch ppc
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c: In function '__closure_alloc':
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16418:51: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_alloc'?
16418 | #define _CLOSURE_SIZE (((2*sizeof(void*) > sizeof(__closure_thunk) ? 2*sizeof(void*) : sizeof(__closure_thunk)) + sizeof(void*) - 1) & ~(sizeof(void*) - 1))
      |                                                   ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16528:40: note: in expansion of macro '_CLOSURE_SIZE'
16528 |         int remaining = _V_page_size / _CLOSURE_SIZE;
      |                                        ^~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16418:51: note: each undeclared identifier is reported only once for each function it appears in
16418 | #define _CLOSURE_SIZE (((2*sizeof(void*) > sizeof(__closure_thunk) ? 2*sizeof(void*) : sizeof(__closure_thunk)) + sizeof(void*) - 1) & ~(sizeof(void*) - 1))
      |                                                   ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16528:40: note: in expansion of macro '_CLOSURE_SIZE'
16528 |         int remaining = _V_page_size / _CLOSURE_SIZE;
      |                                        ^~~~~~~~~~~~~
In file included from /usr/include/string.h:148,
                 from /opt/local/include/LegacySupport/string.h:25,
                 from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:805:
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c: In function '__closure_init':
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16566:30: error: '__CLOSURE_GET_DATA_BYTES' undeclared (first use in this function); did you mean '__CLOSURE_GET_DATA'?
16566 |         memcpy(_closure_ptr, __CLOSURE_GET_DATA_BYTES, sizeof(__CLOSURE_GET_DATA_BYTES));
      |                              ^~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16418:51: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_init'?
16418 | #define _CLOSURE_SIZE (((2*sizeof(void*) > sizeof(__closure_thunk) ? 2*sizeof(void*) : sizeof(__closure_thunk)) + sizeof(void*) - 1) & ~(sizeof(void*) - 1))
      |                                                   ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16569:25: note: in expansion of macro '_CLOSURE_SIZE'
16569 |         _closure_ptr += _CLOSURE_SIZE;
      |                         ^~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c: In function '__closure_create':
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16418:51: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_init'?
16418 | #define _CLOSURE_SIZE (((2*sizeof(void*) > sizeof(__closure_thunk) ? 2*sizeof(void*) : sizeof(__closure_thunk)) + sizeof(void*) - 1) & ~(sizeof(void*) - 1))
      |                                                   ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc/v.c:16581:25: note: in expansion of macro '_CLOSURE_SIZE'
16581 |         _closure_ptr += _CLOSURE_SIZE;
      |                         ^~~~~~~~~~~~~
make: *** [all] Error 1
make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3'
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3" && /usr/bin/make -j6 -w all local=true VFLAGS="-v -cg -showcc -show-c-output -prod -cc /opt/local/bin/gcc-mp-13 -cflags -Os" VC=/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/v-0.4.3/vc CC="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/cc/opt/local/bin/gcc-mp-13" CXX="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/cxx/opt/local/bin/g++-mp-13" OBJC="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/objc/opt/local/bin/gcc-mp-13" OBJCXX="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/objcxx/opt/local/bin/g++-mp-13" FC="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/fc/opt/local/bin/gfortran-mp-13" F77="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/f77/opt/local/bin/gfortran-mp-13" F90="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_vlang/vlang/work/compwrap/f90/opt/local/bin/gfortran-mp-13" INSTALL="/usr/bin/install -c" 
Exit code: 2

Possible Solution

No response

Additional Information/Context

gcc-13.2.0, Macports build environment

V version

0.4.3

Environment details (OS name and version, etc.)

macOS 10.6 / ppc

Note

You can use the 👍 reaction to increase the issue's priority for developers.

Please note that only the 👍 reaction to the issue itself counts as a vote.
Other reactions and those to comments will not be taken into account.

@barracuda156 barracuda156 added the Bug This tag is applied to issues which reports bugs. label Jan 12, 2024
@barracuda156 barracuda156 changed the title vlang 4.3.0 fails to build: v.c: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_alloc'? vlang 0.4.3 fails to build: v.c: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_alloc'? Jan 12, 2024
@barracuda156 barracuda156 changed the title vlang 0.4.3 fails to build: v.c: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_alloc'? vlang 0.4.3 broken on PowerPC: v.c: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_alloc'? Jan 12, 2024
@barracuda156
Copy link
Author

So, 0.3.4 apparently is good (at least no closure failure), while 0.3.5 already broken.

@barracuda156 barracuda156 changed the title vlang 0.4.3 broken on PowerPC: v.c: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_alloc'? vlang 0.3.5+ broken on PowerPC: v.c: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_alloc'? Jan 12, 2024
@barracuda156
Copy link
Author

@barracuda156 barracuda156 changed the title vlang 0.3.5+ broken on PowerPC: v.c: error: '__closure_thunk' undeclared (first use in this function); did you mean '__closure_alloc'? vlang 0.3.5+ broken on PowerPC (macOS, FreeBSD, Linux); while 0.3.4 builds fine Jan 12, 2024
@barracuda156
Copy link
Author

@felipensp @spytheman @yuyi98 Could someone please look into this? While specific support for powerpc has not been there, it worked as of 0.3.4, but does not work since 0.3.5 anymore.

@felipensp felipensp added the Build V build error on any OS/CPU architecture. label Jan 12, 2024
@felipensp
Copy link
Member

We'll take care of it. Thanks for reporting.

@barracuda156
Copy link
Author

@felipensp Great, thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Arch: PowerPC Bugs/feature requests, that are related to architecture PowerPC. Bug This tag is applied to issues which reports bugs. Build V build error on any OS/CPU architecture.
Projects
None yet
Development

No branches or pull requests

2 participants