#programming

1 messages · Page 90 of 1

sage crag
#

it would be costly since no dynamic dispatch

tender river
#

i think its partially also done to support something like test harnesses

sage crag
#

makes sense

tender river
#

very explicit algebraic effects

sage crag
#

essentially colouring functions by their effects

#

interesting

#

makes sense with the allocator api too

warped narwhal
#

you can set makefile highlighting for these btw

$(shell mkdir -p $(OUTPUT))
all: $(OUTPUT)/a.exe

$(OUTPUT)/a.exe: $(OBJS)
    $(CXX) $(OBJS) -g -o $@ $(LDFLAGS)

$(OUTPUT)/%.o: src/%.cpp
    $(CXX) $(CXXFLAGS) -c $< -o $@

-include $(DEPS)
opaque sigil
#

ah, sdl2_image depends on libgcc_s

old totem
#

im not sure if anyone uses excel here

olive sable
old totem
#

but i was hoping someone could help me make an addon with cpp and VBA

warped narwhal
tender river
opaque sigil
trim valve
#

is the nixos manual a good place to start in terms of getting to grips with nixos

warped narwhal
tender river
#

if you know what you need that is

trim valve
#

i have never touched nixos before

tender river
#

the config file is pretty self explanatory

#

but its true that for stuff like updating you'll have to read the manual

#

the problem is nixos manual still suggests stuff like nix-env which is just not a good idea

opaque sigil
#

is this version on github yet, there's a couple things i'd like to try to make it work neuroPogHD

tender river
#

anyway its not that hard to understand surface level configuration, and the best place to start is just editing it

tender river
#

when you're comfortable with that i'd recommend you to learn nix flakes

olive sable
#

i have a working version on there tho

warped narwhal
#

genuine question about nixos, I know that it uses a programming language for it's configs, but when would you actually need to calculate things instead of just using the static variables etc

rough bloom
olive sable
#

wait i didnt push that one

tender river
#

its for "building software" (or any kind of files, really)

#

but also

#

if you just put each config file as a string you dont necessarily need computations

#

but if you want structured configuration, you at least need something like string interpolation

#

if you want to use lists, you now have to have list concatenation and access operations, folds, maps

#

any good language for operating on structured data supports key-value maps

#

then you may want to convert a structured list of mounts to fstab format, boom you need toposort

#

also, the module system itself is written in the nix language

#

the way configuration from different modules is merged is written in the language itself

#

this means you can e.g. write custom rules for merging configuration

olive sable
#

@opaque sigil wouldnt gdb work?

opaque sigil
#

that's a debugger

olive sable
#

isnt it also able to look at avriables?

rough bloom
#

if you want to use a debugger to help diagnose your UB problem, then yeah, you could do that

#

is gdb a thing on Windows

tender river
#

gdb can show you a backtrace when the program crashes

olive sable
#

its installed lready

tender river
#

and you can inspect the asm and the stack and so on

olive sable
#
Thread 1 received signal SIGSEGV, Segmentation fault.
0x00007ff6c689e453 in std::_Hashtable<int, std::pair<int const, unsigned int>, std::allocator<std::pair<int const, unsigned int> >, std::__detail::_Select1st, std::equal_to<int>, std::hash<int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::_M_find_before_node (this=<optimized out>, __bkt=<optimized out>, __k=<optimized out>, __code=<optimized out>) at C:/w64devkit/lib/gcc/x86_64-w64-mingw32/15.1.0/include/c++/bits/hashtable.h:2205
2205          __node_base_ptr __prev_p = _M_buckets[__bkt];
(gdb)
#

hmmm

#

whatever that is

warped narwhal
olive sable
#

i didnt know i was using a hashmap

twin rose
#

so neuro is just a chatbot? have my own running on my phone lmao ye

olive sable
#
(gdb) bt
#0  0x00007ff78b64e453 in std::_Hashtable<int, std::pair<int const, unsigned int>, std::allocator<std::pair<int const, unsigned int> >, std::__detail::_Select1st, std::equal_to<int>, std::hash<int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::_M_find_before_node (this=<optimized out>, __bkt=<optimized out>, __k=<optimized out>, __code=<optimized out>) at C:/w64devkit/lib/gcc/x86_64-w64-mingw32/15.1.0/include/c++/bits/hashtable.h:2205
#1  std::_Hashtable<int, std::pair<int const, unsigned int>, std::allocator<std::pair<int const, unsigned int> >, std::__detail::_Select1st, std::equal_to<int>, std::hash<int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::_M_find_node (this=<optimized out>, __key=<optimized out>, __c=<optimized out>, __bkt=<optimized out>) at C:/w64devkit/lib/gcc/x86_64-w64-mingw32/15.1.0/include/c++/bits/hashtable.h:909
#2  std::__detail::_Map_base<int, std::pair<int const, unsigned int>, std::allocator<std::pair<int const, unsigned int> >, std::__detail::_Select1st, std::equal_to<int>, std::hash<int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true>, true>::operator[] (this=this@entry=0xedaac8, __k=@0x26a4cb0: 0) at C:/w64devkit/lib/gcc/x86_64-w64-mingw32/15.1.0/include/c++/bits/hashtable_policy.h:888
#3  0x00007ff78b593af1 in std::unordered_map<int, unsigned int, std::hash<int>, std::equal_to<int>, std::allocator<std::pair<int const, unsigned int> > 
#
>::operator[] (this=<optimized out>, __k=@0x26a4cb0: 0) at C:/w64devkit/lib/gcc/x86_64-w64-mingw32/15.1.0/include/c++/bits/unordered_map.h:1058
#4  Model::drawModel (this=0xedaa80) at src/loadGLTF.cpp:85
#5  0x00007ff78b5453e3 in Render::baseloop (this=0x5ffd00) at C:/w64devkit/lib/gcc/x86_64-w64-mingw32/15.1.0/include/c++/bits/shared_ptr_base.h:1672
#6  Render::baseloop (this=<optimized out>) at src/main.cpp:301
#7  Render::nativeLoop (this=0x5ffd00) at src/main.cpp:298
#8  Render::chooseLoop (this=0x5ffd00) at src/main.cpp:280
#9  Render::Render (this=0x5ffd00) at src/main.cpp:264
#10 SDL_main (argc=<optimized out>, argv=argv@entry=0x6c4ce0) at src/main.cpp:535
#11 0x00007ff78b5b92e6 in main_getcmdline () at ../src/main/windows/SDL_windows_main.c:80
#12 0x00007ff78b5412f1 in __tmainCRTStartup ()
#13 0x00007ff78b54135c in mainCRTStartup ()
(gdb)
#

too big for 1 message lol

rare bramble
#

🐥 🚬 Segmentation fault

olive sable
#

Pizza time

tender river
olive sable
#

which is

#

glBindTexture(GL_TEXTURE_2D, textureMap[mesh.textureIndex]);

#

huh

tender river
#

so you somehow corrupted the texture index

olive sable
#

fuck

tender river
#

are you casting any pointers?

#

or maybe, are you modifying some containers while iterating over them?

#

like removing or adding elements

olive sable
#

creating the textures happens in this loop here

#

and the index get added to meshdata

#

which gets added to a vector

#

and the other possible loop is this one

for (RenderableObject &rendObj : objectlist)
{
    glm::vec3 position = rendObj.object.position;
    rendObj.model->aabb.min += position;
    rendObj.model->aabb.max += position;
    for (boundingbox &box : rendObj.model->boundingboxes)
    {
        //box.min += position;
        //box.max += position;
    }
}
#

rendObj.model->aabb.min += position;
rendObj.model->aabb.max += position;
box.min += position;
box.max += position;

seemed to be the culprits earlier so probably them?

tender river
olive sable
tender river
#

(you have to use std::move if you dont want that)

olive sable
#

push_back didnt break it before but im thinking if that was just coincidence

tender river
#

additionally, if the GL code takes some pointers for binding, you have to be extra sure not to invalidate them

tender river
#

theres no other way

#

thats why we have static and dynamic analysis tools like ubsan/asan that do it for you

#

in your case, its data being corrupted for no reason when you do something unrelated, so the actual problem is probably in a completely different place

olive sable
rigid snow
#

ICANT very helpful

rare bramble
#

my base is starting to be a lot more solid now

#

idk if it looks like much has changed but I have improved a lot of things under the hood

#

though if I'm invaded atm, I shall perish

fast pagoda
#

i feel as though i am going insane

#

i have been switching my applications

#

and themes

#

to light mode

topaz tendon
#

I went through something somewhat similar, but I kept dark mode everything at home while I set light mode everything at work. I don't know if it's placebo, but it may have helped me with keeping my head in my work tasks.

olive sable
tender river
#

compile with -g and no -O if you want debug info

warped narwhal
#

there is the -Og flag to get better debugging

stark needle
#

wtf is this instance

#

bro is hogging all the 4090s😭

warped narwhal
#

is that $15 an hour, or $15000 an hour?

tender river
#

15k

warped narwhal
#

yikes

stark needle
tender river
#

you're not getting a 32x4090 for $15 lol

stark needle
#

it is 15$/hr

warped narwhal
#

wtf?

amber fractal
tender river
#

wth

opaque sigil
#

it's called losing money neuroPogHD

#

the silicon valley special

olive sable
#

why buy a 4090 when you can have 32 for 200 hours for the same price?

stark needle
#

fr

#

😭

warped narwhal
#

I suppose, if you're only doing a one time task with them, then it is much more cost effective

tender river
#

if we divide that by 32 its 266 days of 24/7 uptime

olive sable
#

32 for 200 hours is the same as 1 for 6400 hours no?

tender river
#

minus power costs

stark needle
#

12 4090s it's 3.77$/hr

warped narwhal
stark needle
#

u can get h100 for 40 cents ez

opaque sigil
#

okay fwiw i managed to get your game engine running with clang sam, all statically linked too

#

vcpkg my beloved

#

could be worse glueless

amber fractal
#

if your going to be using it very often for interference and other sruff

violet plover
#

I think I have a spare 3090 in a drawer somewhere

opaque sigil
#

@rough bloom the things we do to avoid msvc neuro7

rough bloom
#

this is why we use build systems neuroCURSED

#

surely with something like CMake you at least don't have to specify stuff like -lkernel32

opaque sigil
#

meson has wrapped dependencies for pretty much all of these so it'd be like 5 lines to get everything locally

#

you probably don't need to specify all of them i just grabbed them all from the pkg-config file for sdl2

olive sable
#

ok -O0 moved the crash to

Thread 1 received signal SIGSEGV, Segmentation fault.
0x00007ff662de9d80 in glm::vec<3, float, (glm::qualifier)3>::operator+=<float> (this=0x6ce000, v=...) at src/include/glm/./ext/../detail/type_vec3.inl:248
248                     this->x += static_cast<T>(v.x);

neuroLookUp

nocturne olive
opaque sigil
#

i'm half tempted to make a pr with meson as the build system but i doubt it'd get accepted neuroPogHD

sage crag
#

i am the best konii clone

olive sable
#

idk how meson works so idk

amber fractal
tender river
#

i have killed the other chayleaf clones so i am trivially the best chayleaf clone

#

unless some escaped

olive sable
#

at least 4

sage crag
#

could be

tender river
#

do you have gatherings

sage crag
tender river
sage crag
olive sable
#

meson

#

whatever same thing

sage crag
#

melon is type of fruit

tender river
sage crag
olive sable
#

im hungry

sage crag
#

meson is probably edible

tender river
#

it wouldnt be filling

#

unless you have a lot of them

sage crag
#

what if its a really big meson made of chocolate

tender river
#

how will you eat it, it disappears after like 0.2 nanoseconds

sage crag
#

im faster

tender river
#

your digestion also has to keep up

sage crag
tender river
#

we can buy you a regular chocolate bar instead, it wont disappear

#

(unless its really really hot)

olive sable
#

my digestion is masterclass

#

my metabolism works away the carbs before they're even in my body

tender river
#

sorry its 2am remind me tomorrow

#

do you want milk or dark

sage crag
#

dark enub

tender river
#

good choice

#

in my nearest supermarket theres like 5 shelves of milk chocolate but only 1 shelf of dark chocolate i wish they'd add more variety

sage crag
#

m

#

choco

#

tasty

warped narwhal
#

my nearest shop is the exact opposite, the cheap own-brand bars always have no milk and white chocolate, but hundreds of dark chocolate

#

for referemce I don't like dark chocolate

amber fractal
#

dark and light chocolate is nice

olive sable
tender river
#

sketch

# ~(List[A]; int; ~Option[B]; ~(val:A, backtrack:~()))
amb choices i finish choose =
  if = i choices.length @ {
    finish ()
  } else {
    choose choices[i] @;
    amb choices (+ i 1 @) finish choose
  };

# ~(~(int; int))
pair_sum10 return =
  let (a, backtrack) = amb [1,2,3,4,5,6] 0 panic @;
  let (b, backtrack) = amb [1,2,3,4,5,6] 0 backtrack @;
  if = (+ a b @) 10 {
    return a b
  } else {
    backtrack ()
  };

the language itself isnt that weird (other than cps everywhere) but what i'm interested in is compiling it to use the stack rather than the heap

sage crag
#

awa

tender river
#

bwa

olive sable
#

awa

tender river
#

cwa

olive sable
#

bwaa

warped narwhal
opaque sigil
#

i just remembered i have an exam in 4 days, maybe i should prepare for that neuroPogHD

olive sable
#

just remembered lmao

opaque sigil
#

it's fiiiiiiiine

stark needle
opaque sigil
#

Btw Sam I pushed my clang version to its own branch if you ever feel like going that route for whatever reason neuroPogHD

#

uses vcpkg for the dependencies though

olive sable
#

idk what vcpkg is but sure

opaque sigil
#

it's a package manager for c/c++

olive sable
tender river
opaque sigil
#

lets you avoid having to grab the dependencies manually and just install them via a single command which is nice, especially for windows OK

tender river
warped narwhal
olive sable
#

ahh

#

errors, my favorite

tender river
#

then i can jump back into erf without bothering with continuations

opaque sigil
olive sable
#

i might have them somewhere

opaque sigil
#

you can make it dynamic but then it expects the dlls to be available and that's kinda annoying too

#

so i just made it static

olive sable
#

if you got it working, where did you get the static versions from?

opaque sigil
#

vcpkg, if you have it installed somewhere you can just run vcpkg install --triplet x64-windows-static in the project root and it downloads them

olive sable
#

it is doing downloading a bunch of stuff now ye

#

i probably should move vcpkg out of my onedrive tho KEKW

opaque sigil
#

probably neurOMEGALUL

amber fractal
#

gotta continue making microsoft scan new exe files tho :xdx:

olive sable
amber fractal
#

Seems like it is indeed doing that still

olive sable
opaque sigil
#

huh

olive sable
#

i did a quick make clear and now i get ./src\loadGLTF.hpp:43:7: error: no template named 'optional' in namespace 'std'

opaque sigil
#

guess it's targeting c++14

olive sable
#

ah

#

ok

opaque sigil
#

that's weird though, what version of clang are you using

olive sable
opaque sigil
#

that's the same version i was using too

#

cool

olive sable
#

i added a -std=c++23 and now i receive a bunch of glew errors

#

why cant things jsut work?

opaque sigil
#

excellent question

#

what's the whole command that triggered the errors menherathonk

olive sable
#

chatgpt says -lglew32s instead of -lglew32?

opaque sigil
#

nah

opaque sigil
#

the 4 clang++ commands that run

olive sable
#
clang++ -O3 -Wall -I./src -I./src/include -I./models/V-nexus -I./vcpkg_installed/x64-windows-static/include -DSDL_MAIN_HANDLED -DSDL_STATIC -DGLEW_STATIC -std=c++23 -c src/shader.cpp -g -o output/shader.o

clang++ -O3 -Wall -I./src -I./src/include -I./models/V-nexus -I./vcpkg_installed/x64-windows-static/include -DSDL_MAIN_HANDLED -DSDL_STATIC -DGLEW_STATIC -std=c++23 -c src/loadGLTF.cpp -g -o output/loadGLTF.o

clang++ -O3 -Wall -I./src -I./src/include -I./models/V-nexus -I./vcpkg_installed/x64-windows-static/include -DSDL_MAIN_HANDLED -DSDL_STATIC -DGLEW_STATIC -std=c++23 -c src/glcontext.cpp -g -o output/glcontext.o

clang++ output/main.o output/shader.o output/loadGLTF.o output/glcontext.o -g -o output/a.exe -fuse-ld=lld -L./src/lib -L./vcpkg_installed/x64-windows-static/lib -lSDL2-static -lSDL2_image-static -lSDL2_ttf -lfreetype -lopengl32 -lglew32 -lkernel32 -luser32 -lgdi32 -lwinmm -limm32 -lole32 -loleaut32 -lversion -luuid -ladvapi32 -lsetupapi -lshell32 -ldinput8 -llibpng16 -lbz2 -lzlib -lbrotlidec -lbrotlienc -lbrotlicommon
opaque sigil
#

hmmmm

#

the only difference is the c++23

#

okay

#

it does work with c++23 for me om

#

oh

#

i know why

warped narwhal
#

is there a repo where I can try to compile it?

opaque sigil
#

you're using the other glew

olive sable
opaque sigil
#

you still have the #include <glew/glew.h> so it doesn't error out because it does find it

olive sable
#

ahhh

opaque sigil
#

even though it should use the one under GL/glew.h

olive sable
#

so i delete the other one?

opaque sigil
#

which is the static one

#

yeah

#

just yeet them all under src/lib

#

and fix the compile errors OK

olive sable
#

it seems to run now

opaque sigil
olive sable
#

before crashing from the issue that is still present KEKW

opaque sigil
#

how did you even run it before, does mingw automatically link everything statically

olive sable
#

idk

#

i was using g++

#

time for -fsanitize=address hopefully

rough bloom
opaque sigil
#

oh wait you're right

#

the mingw library path is under PATH i think

#

so it'd find them there at runtime

#

idk

#

doesn't matter anyway now i guess neuroPogHD

rough bloom
#

neuroHypers static linking

opaque sigil
sage crag
#

static linking is too based

#

too based for libc

opaque sigil
#

*glibc

sage crag
#

this is true

opaque sigil
#

musl my beloved

sage crag
#

poor musl

rough bloom
#

libc is pretty much the only library where static linking isn't that useful anyway

olive sable
#

onedrive casualy "you're running low on storage 84%" KEKW
like nah i aint paying for a glorified 5GB usb stick

opaque sigil
tender river
olive sable
#

keeps complaining about a missing dll for some reason

opaque sigil
olive sable
#

My pc froze

#

Classic win11

amber fractal
#

system32.dll was missing (real)

olive sable
#

NOOOO

#

It was a ploy to update my pc

amber fractal
sage crag
#

what if every IO function can return Future(IoResult(T)) or IoResult(T)

#

hm

#

no, then you would have to shove await everywhere

#

how to async without await

tender river
#

hi

sage crag
#

hi

olive sable
#

hi

tender river
amber fractal
#

hi

tender river
#

but its not well suited for a systems language, typically requires lot of heap allocations or at least stack switching

sage crag
#

rip

#

eh, the main problem with await is fragmenting ecosystems

#

what if i just make everything async

tender river
#

now everything is a state machine neuro7

sage crag
tender river
#

i once tried implementing async and sync deserialization code for a random file format

#

i could do it with some macros but since async functions are state machines they cant actually recurse without boxing

sage crag
#

who needs async anyway just use threads

#

every time i revisit async i realise how much it sucks

opaque sigil
#

why not do async via threads neuroPogHD

tender river
#

if you design your whole language around async it doesnt suck but then it not a systems language

sage crag
tender river
tender river
opaque sigil
sage crag
#

so i agree

tender river
#

unlike rust

sage crag
#

this is true

#

3/4 letters are shared

opaque sigil
#

go > rust confirmed

tender river
#

its read-only aliasing so rust is fine with it

sage crag
#

hblang will probably never get async

#

thats fine, do fibres or something

tender river
# sage crag yeah, its javascript <:enub:1163912230585237655>

i'm trying to figure out a way to do async in erf and pretty much the only conclusion i came to is - make so the same code can compile using different "compilers", some to "native" code, some to state machines. in the lisp world this is also used for something like automatic differentiation. well, this requires heavy metaprogramming which is out of scope, this is all just theoretic

nocturne olive
olive sable
#

yep

opaque sigil
#

you can run dumpbin.exe /DEPENDENTS /path/to/binary to get a list of DLLs it depends on

it's in somewhere akin to C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\bin\Hostx86\x64\dumpbin.exe

olive sable
#

dumpbin.exe?

#

do i need to install that?

opaque sigil
#

it comes with msvc

olive sable
#

ok

opaque sigil
#

this is the list for me, all shipped by windows so unless you added another library or something went very wrong they should all be accessible PikaThink

olive sable
#

dumpin is in visual studio tho? i dont have that

opaque sigil
#

well

#

sounds like it's time to install visual studio

olive sable
opaque sigil
#

say goodbye to 8gb of your storage or however much it is

rough bloom
tender river
#

awawa

opaque sigil
#

it failed to start cause of missing runtime dependencies

#

as for why

olive sable
#

it crasjhed with Error -1073741515

opaque sigil
#

your guess is as good as mine

rough bloom
#

good job Microsoft

opaque sigil
#

NTSTATUS 0xC0000135 => The code execution cannot proceed because %hs was not found. Reinstalling the program may fix this problem.

#

it's annoying cause they internally store the status as i32s but then show them as u32s

opaque sigil
#

or rather, they show them as u32 in their reference

#

i get that they're technically the same number but neuroSob

rough bloom
#

I like how (relatively) easy debugging dynamic linking issues is on Linux
LD_DEBUG=all solves everything

opaque sigil
#

oh wait i'm dumb

#

you can quite literally just double click the executable and it'll tell you which library is missing

#

i was always forget about that since i never launch stuff that way neurOMEGALUL

opaque sigil
#

forgot the /dependents

olive sable
#

ah

opaque sigil
#

found our culprit neuroPogHD

olive sable
#

so the same depends

#

?

opaque sigil
#

it doesn't find the first one i bet

olive sable
#

ARGendoHmm so how do i fix it?

rough bloom
#

I have a suggestion
copy that DLL and put it next to a.exe neuroPogHD

keen swift
#

This is very fun:

olive sable
#

a.a.a.a

opaque sigil
#

you can add the folder where the dll is to PATH temporarily

gritty dust
rough bloom
opaque sigil
#

there's a clang_rt.asan_static_runtime_thunk-x86_64.lib neuroPogHD

keen swift
# gritty dust what the...

Basically I ask it to analysis a regex I wrote that cause ReDoS
And now it DoS itself and also my laptop

opaque sigil
#

(don't ask me how to statically link asan idk)

keen swift
#

Or maybe not itself since Google have bunch of compute

rough bloom
#

Limitations

  • Static linking of executables is not supported.
    I think you might just have to use the DLL mahi
keen swift
rare bramble
rough bloom
#

of ASan

olive sable
#

idk where to get that

olive sable
#

now just need to find clang

keen swift
olive sable
#

i would like to add that the code works perfectly fine with emscripten KEKW

opaque sigil
#

\lib\clang\20\lib\windows\clang_rt.asan_dynamic-x86_64.dll under whatever folder they installed llvm to

olive sable
#

ok found it

keen swift
olive sable
#

aight it ran for a second

rough bloom
#

neuroPogHD it found something

keen swift
#

Seg fault?

tender river
#

try ubsan irst

#

first

olive sable
#

where can one find that?

keen swift
#

My phone just refuse to let me any higher resolution 🥴

olive sable
tender river
#

-fsanitize=undefined

olive sable
#

it didnt like that

lld-link: error: /failifmismatch: mismatch detected for 'RuntimeLibrary':
libcpmt.lib(StlLCMapStringA.obj) has value MT_StaticRelease

clang_rt.ubsan_standalone_cxx-x86_64.lib(ubsan_type_hash_win.cpp.obj) has value MD_DynamicRelease
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [makefile:36: output/a.exe] Error 1

tender river
#

mt md neuroDespair

olive sable
#

so what does that mean?

tender river
#

try pasing -s compiler.runtime=MD or -s compiler.runtime=MT

#

wait no

#

not gonna work i think (or it might idk)

#

anyway the issue is that ubsan expects dynamic linking i think? idk

#

right, md is about dynamic linking to the C++ runtime

#

oh wait

#

no dont wait idk

olive sable
#

-fsanitize=address at least returned something

#

idk what it means but ill hopefully find out

tender river
#

-static-libsan or -shared-libsan may work

tender river
olive sable
#

error: unsupported option '-static-libsan' for target 'x86_64-pc-windows-msvc'

olive sable
tender river
#

it does not mean its due to that operation

olive sable
#

and it even works on emscripten so idk anymore

#

its not my code thats wrong, its the c++ compiler

tender river
#

its your code

#

its triggering undefined behavior

olive sable
tender river
#

at this point i'd recommend you to commit everything and then try to strip your program of every feature not related to causing that crash

olive sable
#

normally i get AddressSanitizer: heap-buffer-overflow on address 0x125875ba1100 at pc 0x7ff747793fb4 bp 0x0079112ff500 sp 0x0079112ff548
but when i dont initialize opengl or the sdl window i get AddressSanitizer: access-violation on unknown address 0x000000000000 (pc 0x000000000000 bp 0x00804fcff9a0 sp 0x00804fcfeed8 T0)

pepehmm

opaque sigil
#

crazy how not initialising causes a segfault

olive sable
#

well ye but im not using sdl nor opengl yet

#

im just seeing shit ig

opaque sigil
#

also i think the only way to get ubsan working here is to not pull dependencies from x64-windows-static and go back to dynamic dependencies so if you feel like using it there's that neuroPogHD

olive sable
#

ive already spent hours on this

#

idk if i can be bothered

#

is it even worth it?

opaque sigil
#

Who knows

tender river
#

@open copper

olive sable
#

@rare bridge

#

@real sierra ?

real sierra
raw trout
olive sable
#

hi shiro

#

hi other mods who may potentialy come due to being pinged

tender river
#

you can still do something like remove type aliases, replace shared_ptr with new (dont care about memory leaks) or stack allocation

olive sable
#

going fromfor (boundingbox &box : mesh2.boundingboxes)
to for (boundingbox box : mesh2.boundingboxes)
seems to fix it

tender river
#

because you're now copying the box

#

so you're not changing the original one

olive sable
#

that is true yes

#

what i find most weird is that mesh2.aabb.min += position; doesnt make it break but the ones in the loop do

olive sable
#

so uhh

#

i think i figured it out

#

i started removing includes...

#

removing #define GLM_FORCE_ALIGNED fixes it

#

ye its running completely fine now

#

bruh

#

why didnt you tell me earlier chatgpt? i gave you the entire source code

#

this is where those alignas(16) come into play then?

#

yep

#

oh my lord

#

its fixed neuroHypers

#

im taking a break

#

fuvk

stark needle
#

Where tf did someone ping me

#

I dont see it anywhere

stark needle
#

It's on demand

warped narwhal
olive sable
#

i did

#

alignas(16)

warped narwhal
#

Ah

#

On the vector object?

#

Or on its allocator

olive sable
#

on the strruct

#
struct alignas(16) boundingbox
{
    glm::vec3 min;
    glm::vec3 max;

    std::optional<glm::vec3> intersectRay(const glm::vec3& ray, const glm::vec3& origin);
};
#

this is the struct that the loop goes over

#

so since the struct has 2x16 bytes allocated and the for loop was offsettign by 2x12 bytes i think that was what broke it

cosmic sphinx
warped narwhal
#

Does this solve the issue though? As the std allocators don't need to follow the alignas of a struct

olive sable
#

it stopped crashing

#

why wouldnt they need to follow the alignas?

#

the whole point of alignas i thought was for them to be followed

#

thats the dumbest shit ive heard c++ do

warped narwhal
#

Alignas is info for the compiler, not for classes

olive sable
#

bruh

warped narwhal
#

Remember that the standard library is just regular c++ code, so it doesn't have as many requirements.

olive sable
#

i was kinda hoping the standart code would follow some guidelines

#

it shouldnt just be inconsistent

warped narwhal
#

It's not a guideline, it's a standard for the compiler, and some data is just straight up not available to c++ code

olive sable
#

well nayways it works now

#

@opaque sigil thanks btw ZoroPray

#

have a cookie 🍪

#

same for chay

sage crag
#

awa

opaque sigil
#

Glad to hear everything seems to work now

#

Well, except ubsan

olive sable
#

we dont need ubsanNeuroClueless

opaque sigil
#

not wrong

olive sable
#

who names their child ub anyways?

opaque sigil
#

Elon would

olive sable
#

aight imma watch some anime, fix the collision system hopefully, and then i can start 3D modeling for the game-jam tomorrow

amber fractal
#

waiting for konii to confirm PauseSama

sage crag
#

no, too cute

#

its more like voiced pacman

amber fractal
#

So this video if made with ancient vocaloid tech

sage crag
nocturne olive
#

Whar are you sillying?

opaque wharf
#

konii awawa'ing

sage crag
nocturne olive
#

Whar

opaque wharf
#

Exactly as I said

olive sable
#

awa

fast pagoda
#

why is it that windows device portal is more information in a graphical format, in one place, than anywhere else on the entire system

#

and you have to enable it and connect to it remotely

amber fractal
#

logics

fast pagoda
#

yeah sure bro here do a kernel dump

opaque wharf
#

Why is it a web app catdespair

fast pagoda
#

you can look at every piece of the window manager being rendered

cobalt sigil
#

uh it looks wide

fast pagoda
#

but only LAN

#

so like

#

idk

opaque wharf
#

Now I am curious, is that specific web app got higher priority than the rest of the system. Because that would be wack

fast pagoda
#

you can even sideload shit

#

you can enable full stack tracing and reboot to get a whole trace of the bootup

#

install certificates

#

uninstall stuff

#

kill running processes

#

see the entire file system

#

there's a performance monitor that is just task manager's graphs but run smoother and have more visible

#

event tracing

#

device management

#

network config management

desert plaza
#

damn that web app is crazy

desert plaza
#

why

fast pagoda
#

you can apparently also use this to host a diag api endpoint for anything YOU are running if you want

#

Starting with Windows 10 Creators Update (version 1703, build 15063), you can use Device Portal to host your app's diagnostic interfaces.

opaque wharf
fast pagoda
#

certificates

opaque wharf
#

So that is the backdoor in the name of diagnostic it seems neurOMEGALUL

fast pagoda
#

yeah i mean if someone got into this thing it's joever

#

guess that's why it's LAN only even tho that doesnt necessarily mean you can't remote to it

opaque wharf
fast pagoda
#

literally set username and password with almost no minimum reqs

desert plaza
opaque wharf
#

The windows account uname and password or different one?

fast pagoda
#

different one but you can make it the same

#

it wont stop you

#

you can turn auth off entirely

opaque wharf
#

That's some juicy toggle for malware neurOMEGALUL

desert plaza
#

imagine a 0day in it NeuroClueless

fast pagoda
#

honestly

#

surprised there isn't one

#

unless im missing something

#

well

#

that's why theyre called 0days

#

someone out there HUGE chilling that found the device portal "auth off" button

#

apparently this thing is available on xbox and such as well

#

hololens

#

anything with a windows kernel

desert plaza
#

well it sure sounds like a juicy attack surface

fast pagoda
#

they packaged it up in a nice restful api for em

#

gave it a lil kiss

#

shipped it out the door

desert plaza
fast pagoda
#

im just waiting for azaka to appear to explain how actually it's fine and i'm a moron missing a huge piece of information

#

i am a magnet for that

desert plaza
#

all rootkits are fine as long as nobody abuses it tho glueless

fast pagoda
#

real

#

i'm a certified windows expert

#

yesterday i left a command running to install like

#

13 packages

#

the first one being miniconda (reinstalling)

#

and i came back like 2 hours later and it was still on step 1/13, installing miniconda

#

so i was like weird

#

oh well it's REALLY slow

#

left again

#

came back

#

still installing miniconda

#

also hard drive threw an out of space warning

#

miniconda had installed itself over and over

#

failing right at the end

#

until it filled the entire drive with broken minicondas

desert plaza
#

that's fukin funny

nocturne olive
#

That's crazy

opaque sigil
#

impressive

fast pagoda
#

the reason it was failing was some arbitrary restriction that you're not allowed to update a miniconda install thru winget

#

apparently

#

probably causes it to explode in some way

#

but i did not know this

#

and apparently you can get DAMN close to fully installing it

#

until it catches it and stops it

#

but by then you've installed almost the entire package

#

and it does NOT clean that up

opaque sigil
#

i hope you decided to pin the version so winget won't try again

nocturne olive
#

Windows moment

fast pagoda
#

i have successfully ignored version updates for miniconda in winget

#

going forward

#

lol

opaque sigil
fast pagoda
#

you made me think "but what about uniget itself"

#

the cursed updaet

desert plaza
#

wait winget has a gui??

fast pagoda
#

it's not just for winget

opaque sigil
#

3rd party

fast pagoda
#

it does like every pkg manager

#

3rd party tho

desert plaza
fast pagoda
#

but it's nice because i get winget, scoop, choco, npm, pip, cargo, vcpkg, .net, and powershell updates thru it

#

if desired

desert plaza
#

neuroReading package manager manager to manage your package managers

#

mhm ok

fast pagoda
#

it's just package managers

#

all the way down

#

that and various performance managers

#

monitors*

#

i think rn i have

#

atop

#

btop

#

htop

#

nvtop

#

nvitop

#

iotop

desert plaza
#

HOLY TOPS

fast pagoda
#

still 'memberin

#

those just the ones with top and im sure ive missed

#

netstat

opaque sigil
#

way too many

fast pagoda
#

iostat

#

glances

#

iftop

opaque sigil
#

thankfully btop and maybe nvtop are the only ones one realistically ever needs

fast pagoda
#

nmon

#

vtop

#

bashtop

#

gtop

#

bptyop

#

way

#

wait

#

bpytop*

#

which is just btop of course

#

but instead of btop++ it says bpytop

#

bashtop -> bpytop -> current btop++

olive sable
#

those are all car sounds my guy

#

you described the sound a car makes as it crashes of a clif

fast pagoda
fast pagoda
#

and bottom

olive sable
#

bottom vedalHUH

fast pagoda
#

btm hehe

#

i am crafting the ultimate monitoring .sh

#

open tmux to 40 sessions each with a different flavour of sysmon

fast pagoda
#

once i've installed every available one

#

i'll finally be able to see about as much info as one(1) grafana dashboard

sage crag
#

browser extension that replaces all instances of [consonant] [vowel] with [consonant] y [vowel]

#

general-network -> gyenyeryal-nyetwyork
amazing

opaque wharf
#

Will it consider words like university?

sage crag
#

university -> unyivyersyity

opaque wharf
#

That's just someone with thick russian accent ngl

small anvil
#

Hello neruosama enjoyers... heres a little project I am working on

If there's anyone out there with the same interests as me (virtual machines for programming languages, creating personal programming languages) pls let me know what I can do better

I am in the early stages of creating a VM for this language I am really passionate about, all and any criticism/questions is encouraged if you're interested

#

heres a little extract of what im planning to compile later down the line (this is a rough draft of what its supposed to look like, eventually i will get things smoothed out)

small anvil
olive sable
#

uuuuh

#

they keep coming

#

@real sierra @rare bridge

#

@open copper @cobalt vessel

#

thanks

raw trout
#

You guys have been on it to clean up the spam

olive sable
#

i do wonder why there is so much spam

raw trout
#

I forg but don't we have a rule acceptance thingy when you first join? Unless the spam accounts aren't fully automated

sage crag
#

poor random accounts bwaa

olive sable
#

bwaa

#

if i ever get hacked shoot me on sight

sage crag
#

i will

raw trout
#

Maybe we need an auth method to verify if you really came back with another account after getting shot lol

"What plane did you recently fly on?"

glass flower
#

Scared getting my discord hacked is like one of the most scary things that can happen to me

raw trout
#

yup

#

Probs get phished through an email or click on a funky link like the gullible person I am 😅

#

Gonna head to bed gn

#

Hopefully tomorrow is another day I can learn to do cool things

olive sable
#

i had a socket to charge my phone to lisbon

#

but to dubrovnik i didnt bwaadow

#

boeing 737 sucks

olive sable
#

konii you dont even have mod powers

sage crag
#

we were talking about moderation?

olive sable
#

you're british, you dont have a gun

#

i on the other hand do have a gun neuroPogHD

#

or well, acces to one

sage crag
#

i have small pebbles for throwing

#

close enough

olive sable
#

i have a 1870 hunting rile from someplace south

#

NeuroBounce this is not a threat

amber fractal
#

Double sided gun, as I know you can't wield that without issues.

olive sable
#

i never tried to use it so idk

#

idk why but this function only works if i put it in the .hpp

#

ill just leave it there then ig

#

ok goodnight

#

8am so thats not completely true but you know

uneven pulsar
#

chat i think

#

i think i'm gonna use vedal plush as a pair progrubber duck

jagged turtle
#

would've thought it would only be in like gn or nn or smth

amber fractal
#

Yeah, I saw spam necro pings last week. Strange how that turns out

opaque sigil
#

Doesn't help that this is the second highest publicly available channel in the list

stark needle
#

Hey guys I'm a spammer!1!!1 download my free app "Eat Lilac" to literally eat Lilac for breakfastthumbs_up use the download link below at www.eatlilacforbreakfast.com for the price of 179.99$.YES✅‼️

I hope you consider eating Lilac for breakfast soon!!

tender river
#

i dont eat breakfast sorry

#

maybe lunch

opaque wharf
molten geyser
#

i'm new here, may i ask what code language you guys use the most here?

glass flower
#

Whatever is needed to get it done YES from python,lua,js,gdscript to c#,c++,rust or whatever

lament igloo
#

?????????

uneven pulsar
#

let it out

amber fractal
#

It's trying to escape neuroMonkaOMEGA

dry charm
opaque wharf
#

Did they not sandbox the JS code generation?

wet oyster
#
  • Chatgpt, flash arch linux on my usb
  • NO NO NOT DISK C-
uneven pulsar
#

"chatgpt brick my phone"
"chatgpt unbrick my phone"

#

oh

dry charm
#

I cannot make it rn

midnight sigil
#

neuroLookDown I wonder what the previous user of this disk did

tender river
#

thats an average of 3.5 days of uptime

#

they probably rebooted the pc every now and then but kept it on at night

midnight sigil
dry charm
#

or were used in a homelab

tender river
#

that would probably be more than 3.5 days

dry charm
tender river
#

get on my level (misinfo)

dry charm
#

okay, this is much better
Top is poweron hours, bottom is cycling

dry charm
# dry charm wtf

what I aboslutely cannot comprehend, is that the NVMe SSD that is being currently booted

#

how does it only have 36 power on hours

#

does NVMe count it very differently?

dry charm
#

found wrose

noble zodiac
#

the cries of the server are deafening

half sand
#

dead chat

unreal coral
#

This would be smth i'd see neuro doing 😂

#

Imagine if neuro could actually email people .-.

#

Too dangerous propably but still

stark needle
#

I love chatgpt!!!!1!1!1!

#

Parasocial relationships with ai anime girl custom gpt my beloved!!!!!!

trim valve
#

parasocial relationships with ai anime girls?

#

in this discord server?

stark needle
trim valve
rare bramble
#

I would never be parasocial to gpt, ew, wtf

#

im loyal to nwero

noble zodiac
#

all my homies love chatgpt induced psychosis

trim valve
#

I will never understand why this pc has such even reads and writes

tender river
#

clearly it writes the data back on every read and reads it back on every write

jagged turtle
#

real

trim valve
#

how did I not notice this great quote

worldly plank
graceful wharf
#

can someone tell me how does neuros karaoke work like how is she able to sing the smae way as they do in the songs does neuro have a ai for rythem or something?

acoustic trellis
#

Hey, when it comes to large language models, is the GB just the storage size, or the amount of ram it uses?

cosmic sphinx
#

but let the experts answer that 1

#

i've barely worked with LM studio

acoustic trellis
#

What if it has the GB amount in the name

cosmic sphinx
#

it means 'gigabytes'

acoustic trellis
#

And that’s it

cosmic sphinx
#

lol

#

can u send a link if its an open model

#

on hf

acoustic trellis
#

It’s not

#

It would be from Ollma or somthing

#

And the LLM had diff versions with different GB numbers

cosmic sphinx
#

most likely its the VRAM capacity then

acoustic trellis
#

I see

#

So if I have 24 Vram then a 32 gb model is out of the e question

cosmic sphinx
#

not really, it could still run partially on ur gpu

#

the rest of the vram would be taken from ur main RAM, but it will run slower

acoustic trellis
#

Does a bigger vram req make it better?

cosmic sphinx
#

the bigger the model, the better it is

acoustic trellis
#

And if it also lists a number and billion or B after it what does that mean

rough bloom
# acoustic trellis Hey, when it comes to large language models, is the GB just the storage size, or...

depends on which number it is
LLMs usually have the number of parameters in the name, for example Qwen3-8B has 8 billion parameters
those 8 billion parameters may be stored with a varying amount of bits, the most common and "default" dtype is bf16 meaning 16 bits / 2 bytes per parameter, so it would need 16 GB of storage for the model
models can also be quantized to need fewer bits per parameter, like 6 bits per parameter, in which case it would be ~6 GB large

this model storage size applies to both on-disk and in VRAM, but to actually run the model additional information needs to be stored in VRAM which inflates the requirements there a bit depending on the model architecture and what you're doing with it

acoustic trellis
#

Tyvm

sage crag
#

im a very economical model that can be run in as little as 2kb of vram

tender river
#

what if i want to run you on my flipper zero

#

it doesnt have vram

sage crag
tender river
#

thats okay i dont plan on holding either

sage crag
tender river
#

i have an esp32 extension board

#

oh right i bought you choco will cranberry strawberry pistachio 72% suffice

tender river
sage crag
#

fancy

tender river
#

pinephone camera couldnt even pick up the text so i had to take it on my laptop neurOMEGALUL

sage crag
#

mobile technology is amazing

tender river
#

it would probably be better if i could use the camera app made specifically for pinephone (megapixels)

#

but i cant because gtk4 recently deprecated gles2

acoustic trellis
tender river
#

it will not combine anything

#

unless you reconfigure it it will usually just use the dgpu

rough bloom
acoustic trellis
#

So I just bought a dgpu weaker than my igpu is that bad?

#

Prior my old dgpu did not function

rough bloom
#

though obviously having two bad GPUs is just not ideal kek

acoustic trellis
#

Well I think the system is better

#

I think it is a ryzen 7000 series and my new dgpu is a rx 6600

acoustic trellis
tender river
#

i'm pretty sure rx6600 is gonna be better than your igpu

acoustic trellis
#

Only 8gb tho

tender river
#

"only"

#

thats a lot of vram

acoustic trellis
#

Isn’t average ai gpu 20gb plus

tender river
#

sure, but if we're comparing your igpu and dgpu the dgpu is gonna win hands down

acoustic trellis
#

Even with less gb?

tender river
#

your igpu probably has like 512mb vram

acoustic trellis
#

Oh

tender river
#

i actually dont know how vram works with igpus

rough bloom
# acoustic trellis Even with less gb?

other than just being able to fit the model in VRAM you also need a lot of memory bandwidth
VRAM has high bandwidth, system RAM generally does not
iGPUs use system RAM = slow

inner pike
acoustic trellis
#

True getting a dgpu double the loading speed of games

#

Or more like 5 fold actually

opaque sigil
#

cuda-gdb won't let me hit any breakpoints 90% of the time, I'm gonna lose it neuroSCHIZO

serene briar
#

Anyone knows where can i apply for like some internship , im in 2nd year in college studying Ai/Ml

glass flower
cosmic sphinx
#

as far as ik
first, you need to extract the original voice track (separate it from music), pb does that
then, that is likely used as an input for neuro's singing AI model, along with the text transcription of the lyrics, output is her own version of singing that
since ML models arent 100% certain in outputs, it can and will likely sound a bit different from the original (other than the voice itself: some little quirks, tone, etc.)
then, the separated music is recombined with neuro's singing output, with some more tweaking from pb (sound effects that may have appeared in the original and such)

#

ofc how the full pipeline works is confidential to vedal, pb and whoever else helps out with producing the karaoke/originals, but this is just my own guess

old totem
#

so im trying to make a scroll interation where it does
3 scroll 2x
2 scroll 1x
3 scroll 3x

but by the next iteration where it goes back to 3 scroll 2x it does 3 scroll 3x instead

#

im assuming i did the math wrong but confuse

olive sable
#

its only 6pm

glass flower
olive sable
#

in the procces of porting the collision to C++ i have also made it 10x more eficient

glass flower
# old totem elp

i'll be honest.. i have absolutely 0 idea what you are even trying to do with this LUL

cosmic sphinx
olive sable
#

elaborate on what you mean by

3 scroll 2x
2 scroll 1x
3 scroll 3x
#

like a list of what it shoudl do?

raw trout
#

easy solution:
hire someone to manually scroll for you neuroGiggle

dry charm
olive sable
#

rn i see that globalcounter goes from 0 - infinity
count is just clobalcounter % 7
i goes from 1 to 3 each increase of count

and the mouseevent happens only if count and i arent 3

dry charm
olive sable
#

oh true

dry charm
#

so it executes the scroll_down 3 times

olive sable
#

so basicly each scrolldown does
3 event
3 event
2 event
if im reading it correctly?

gritty dust
olive sable
dry charm
olive sable
#

oh

#

true

#

i read it wrong

dry charm
#

it is an interesting way to implement this

olive sable
#

idk if i would do it in a loop

#

i myself would just hardcode it

olive sable
#

oh wait

#

3 can stay at 2 ig

#

unless they specifically want 3-4 to do 1 scroll each

sage crag
#

@tender river

#

mhm osu lazer on linux using lutris

tender river
#

thats cool but i wanted to install it using steam

#

is there a tutorial

sage crag
#

its called mcosu

olive sable
#

step1

sage crag
tender river
#

unsubscribe

sage crag
#

this usage of videos is too funny neuroCry

olive sable
#

awa

sage crag
#

awa

tender river
#

awa

sage crag
olive sable
#

i like how you just have to type "awa" and immediatly mkae others say it too

glass flower
sage crag
#

yes

tender river
#

i have brain poisoning i just walk on the street and randomly get the urge to meow

olive sable
#

understandable

sage crag
#

:mhm:

olive sable
#

neurodivergence hits hard ig

rough bloom
olive sable
sage crag
olive sable
tender river
#

i remember trying to run skyrim using playonlinux in like 2016

glass flower
#

tink also you could just add osu! lazer as a external game to steam. and since it has a internal update it will be kept up to date everytime you launch it.

olive sable
dry charm
#

wtf ous!lazer lutris?

#

isn't osu!lazer in the repos?!

#

wait osu!lazer is an app image

opaque sigil
tender river
#

trying to figure out references for erf neuroDespair

nocturne olive
formal quartz
#

neuroDeadge gonna have to teamview to another pc to push a commit i forgot to push, so i can pull it on my current machine

tender river
#

i am a silliness but idk about the

olive sable
nocturne olive
#

welldoneneuro Silly

warped narwhal
sage crag
#

approx 8.5 hours per power cycle

warped narwhal
#

I'm honestly surprised it is so low, only 450 days, even though I've had the drive for the better part of 4 years

olive sable
#

i have trimmed down this code a LOT

#

the python one was enormous

nocturne olive
warped narwhal
#

bool recursion = 0 MONKA
(type coercion my beloved)

nocturne olive
#

Optimization

olive sable
#

it used to be an int

rough bloom
olive sable
#

the thing is, my python code was completely idiotic

#

there is absolutly no need to work with lists

#

also i was using a premade collision function that only returned the collision position, and then i calculated the distance manually.
but the collision function already calculated that internally

#

and i also get the normal from that function now

rough bloom
#

neuroHypers always nice to make code more compact while also making it more readable (and in this case, faster)

olive sable
#

i still have some things to fix about the boundinboxes themselves, cuz they're not in the correct locations

proper carbon
#

does anyone have recommendation for vision tools?
Dont really know too much about them, currently using llava to interpret images but im trying to see if theres any lower latency or higher quality options

#

its just for a small ai project, it currently can view memes and stuff but it takes about 30 seconds on my 2070 and id like to try and reduce that

rough bloom
proper carbon
uneven pulsar
#

So somebody really wrote a hole article to justify me about an old message i send about Neuro vram thing

old totem
#

is this right guys!!?!?

#

this opencv shit is so annoying

#

idk what here

rigid snow
#

(“game” is bindings for a c++ library)

olive sable
#

shader, has: layout (location = 1)
.cpp file, has: glGetUniformLocation()
std::cout << location;
NODDERS
we should get 1
.cpp file: 4294967295 3Head

#

thats 2³²

#

WHY????

#

i never told you to do an integer underflow

opaque sigil
#

sounds like you used a u32 instead of an i32

#

wait no

opaque sigil
olive sable
#

im using GLuint rn

#

i guess i need to use GLint?

opaque sigil
#

worth a try

#

i'm probably talking bs tho