Skip to content

checker, cgen: fix comptime T.methods with generic types and interface checking with is operator #8203

checker, cgen: fix comptime T.methods with generic types and interface checking with is operator

checker, cgen: fix comptime T.methods with generic types and interface checking with is operator #8203

Workflow file for this run

name: Build Vinix
on:
workflow_call:
pull_request:
paths-ignore:
- '**.md'
- '**.yml'
- '!**/vinix_ci.yml'
- 'cmd/tools/vrepl.v'
push:
branches:
- master
paths-ignore:
- '**.md'
- '**.yml'
- '!**/vinix_ci.yml'
- 'cmd/tools/vrepl.v'
concurrency:
group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/master' && github.sha || github.ref }}
cancel-in-progress: true
jobs:
vinix-build:
runs-on: ubuntu-20.04
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- name: Build V
run: make -j4 && ./v symlink
- name: Install dependencies
run: |
./v retry -- sudo apt update
./v retry -- sudo apt install build-essential meson -y
- name: Clone current Vinix
run: ./v retry -- git clone https://github.com/vlang/vinix.git
- name: Download Vinix kernel dependencies
run: cd vinix/kernel && ./get-deps
- name: Attempt to build the Vinix kernel (debug)
run: cd vinix/kernel && make PROD=false KCFLAGS="-D__vinix__ -O2 -g -pipe" KV="../../v" && make clean
- name: Attempt to build the Vinix kernel (prod)
run: cd vinix/kernel && make PROD=true KCFLAGS="-D__vinix__ -O2 -g -pipe" KV="../../v" && make clean
- name: Attempt to build the util-vinix (debug)
run: cd vinix/util-vinix && make PROD=false V="$(realpath ../../v)" VFLAGS="-os vinix -gc none" KCFLAGS="-D__vinix__ -O2 -g -pipe" && make clean
- name: Attempt to build the util-vinix (prod)
run: cd vinix/util-vinix && make PROD=true V="$(realpath ../../v)" VFLAGS="-os vinix -gc none" KCFLAGS="-D__vinix__ -O2 -g -pipe" && make clean