Creating datatypes.Stack of struct references produces C error.
islonely opened this issue · comments
V doctor:
OS: linux, "Manjaro Linux"
Processor: 8 cpus, 64bit, little endian, Intel(R) Core(TM) i5-8350U CPU @ 1.70GHz
CC version: cc (GCC) 12.1.0
vexe mtime: 2022-06-21 18:28:08
is vroot writable: true
is vmodules writable: true
V full version: V 0.2.4 223b96a.8172fec
Git version: git version 2.36.1
Git vroot status: weekly.2022.24-52-g8172fecb-dirty
.git/config present: true
thirdparty/tcc status: thirdparty-linux-amd64 eee03626
What did you do?
v -g -o vdbg cmd/v && vdbg test.v
import datatypes { Stack }
[heap]
struct Element {
mut:
name string
value string
}
fn main() {
mut parent := &Element{
name: 'parent element'
}
mut stack := Stack<&Element>{}
}
What did you expect to see?
Expected stack with generic type of a struct reference to compile
What did you see instead?
test.v:11:6: warning: unused variable: `parent`
9 |
10 | fn main() {
11 | mut parent := &Element{
| ~~~~~~
12 | name: 'parent element'
13 | }
test.v:14:6: warning: unused variable: `stack`
12 | name: 'parent element'
13 | }
14 | mut stack := Stack<&Element>{}
| ~~~~~
15 | }
==================
/usr/lib64/crt1.o: error: Invalid relocation entry [15] '.rela.debug_info' @ 000004f5
tcc: error: file 'crt1.o' not found
/tmp/v_1000/test.11332462667088156692.tmp.c:89: error: ';' expected (got "*")
...
==================
(Use `v -cg` to print the entire error message)
builder error:
==================
C error. This should never happen.
This is a compiler bug, please report it using `v bug file.v`.
https://github.com/vlang/v/issues/new/choose
You can also use #help on Discord: https://discord.gg/vlang
i have same problem.
Try updating V, as for me the code runs just fine.
I have the same problem with the latest version of V just downloaded from github. Just trying to install V triggers the error.
Try performing a clean install, go to your V installation folder, run git pull
, & make
(or make.bat
in Windows)
Try performing a clean install, go to your V installation folder, run
git pull
, &make
(ormake.bat
in Windows)
That is EXACTLY whay i did before experiencing the bug. Voidlinux, all packages up to date
I am getting the same error with V 0.3.0 74bb5ae
.