Thread #108582544
HomeIndexCatalogAll ThreadsNew ThreadReply
H
What are you maids working on?

Last one: >>108561805
+Showing all 325 replies.
>>
>>108582544
>>108561805 (OP)
Next thread:
>>108582544
>>108582544
>>108582544
>>
>>108582544
working to automate the setup of my new computer (checking in all my dotfiles into git, package installation scripts, etc.) so that i never have to fuck with this again
>>
Thank you maid-sama.
(I don't know what that means)
>>
>>108582544
You should all learn to vibecode
>>
>You should all learn to make yourself a useless, dependent brainlet
>>
making another library/manga downloader like everyone else except it supports plugins

kinda complex on the design part to get it right. and I still don't know if it is

Also I added in api too so you can easily intergrate it with whatever
>>
>>108582779
There’s nothing wrong with using new tech, Luddite
>>
>>108582475
This code compiles, but gives the following warning:
test.c: In function ‘f’:
test.c:4:26: warning: ‘sizeof’ on array function parameter ‘a’ will return size of ‘int *’ [-Wsizeof-array-argument]
4 | size_t s = sizeof(a);
| ^
test.c:3:12: note: declared here
3 | void f(int a[], char *id) {
| ~~~~^~~

And when I try to run it I get a segmentation fault.

I don't understand what are you trying to accomplish, you're declaring a variable s in f, but this variable is popped from the stack when the function exits so f(arr1, "arr1") should do nothing, and p() is trying to print the uninitialized pointer *id, so it gets a segfault because it's trying to access a pointer with a garbage address that probably points outside the program.

>>108582516
So what is best practice? For example, If I have a string, should I declare it as a pointer or an array?
char s[] = "Hello World";
char* s = "Hello World";

Is there any practical difference?
>>
>>108582829
also do the icons look ok? I'm actually using drawn SVG paths and not images, thinking they don't look as sharp and have a thick look
>>
>>108582836
if you need the compile-time constant length of the string, use the array. otherwise, use the pointer
>>
>>108582764
Who's gonna buy it if anyone can create it themselves?
>>
>>108582915
You have to understand that the ""profession"" of codetrans is over.
Face it, it’s a useless skill
>>
>>108582764
I use it regularly for fitting tasks, for example rewriting this:

```rust
mod get_entity_mesh_data;
mod get_entity_mesh;
mod get_entity_aabb;
mod get_entity_material;
mod get_entity_name;
mod children_query_ext;

pub use get_entity_mesh_data::*;
pub use get_entity_mesh::*;
pub use get_entity_aabb::*;
pub use get_entity_material::*;
pub use get_entity_name::*;
pub use children_query_ext::*;
```

into this:

```rust
mod get_entity_mesh_data;
pub use get_entity_mesh_data::*;

mod get_entity_mesh;
pub use get_entity_mesh::*;

mod get_entity_aabb;
pub use get_entity_aabb::*;

mod get_entity_material;
pub use get_entity_material::*;

mod get_entity_name;
pub use get_entity_name::*;

mod children_query_ext;
pub use children_query_ext::*;
```
>>
rfid reader with Raspi.
Redpill me into stop procrastinating.
>>
>>108582836
> char s[] = "Hello World";
> char* s = "Hello World";
Those are actually the same, they're both pointers to string in static memory.
Just remember that arrays with fixed length are special.
Neither of those is array with fixed length.
>>
>>108582958
>Neither of those is array with fixed length.
If I wrote 12 (number of characters in "Hello World" plus null terminator) inside the array bracket would it be different?
>>
>>108582836
C does not have arrays at runtime. Arrays in C are purely a compile-time thing and, when you understand this, you'll see through the stupid nonsense of "C arrays" and "C strings". Neither such things exist after compile time in the language's semantics.
Stop thinking about the "decay" nonsense because it provides a strictly incorrect framework. Think of arrays and strings in C as a compile-time convention to provide the compiler information as to how to memory should be laid out. Once compiled, they *do not exist*. You only have pointers to that memory which the compiler laid out.
>>
>>108582750
>>
>>108582832
That's correct.
AI can be helpful in certain areas. Relying on it is stupid. Fighting against it is stupid too, because it's getting pushed to hard by THEM anyways.
So yeah, AI is okay-ish. Vibing is retard brainlet shit
>>
>luddite
>>
>>108582943
nice blog post. Upvoted
>>
>>108583015
Yes, print sizeof in both cases.
>>
>>108582475
>>108582836
Some static checking of array parameters is possible by adding the size
void f(int x[4])
{
return;
}

int x[] = {1, 2, 3};
f(x);

warning: ‘f’ accessing 16 bytes in a region of size 12
7 | f(x);
| ^~~~
note: referencing argument 1 of type ‘int[4]’
note: in a call to function ‘f’
1 | void f(int x[4])
| ^
>>
>>108582764
Unfortunately AI cant solve my problems
>>
>>108582958
The first will have a sizeof of the length of the array, and the second will have a sizeof of the size of a pointer. Though that only applies so long as you don't pass it into a function.
>>
>wojak
>>
Why didn't C do this:

void wat(int arr[]) {
sizeof(arr) == 10
}
void wot() {
int arr[10];
wat(arr);
}
>>
>>108583691
it was a mistake for C to support [] in parameters as it's a like. It's just a pointer.
>>
>>108583691
>>
>>108583691
C is a general-purpose programming language created in the 1970s by Dennis Ritchie.
>>
>>108583691
If you're asking why C doesn't store array size along with the pointer, it's because it evolved from B where everything was an integer and a pointer was just an integer that stored an address.
 sizeof 
is a compile-time macro, so it only gives you the array size when the compiler can resolve the array size..
>>
>>108583015
>>108582958
That's wrong. "char s[]" is an array. You can try it yourself. do "s[0] = 'b';" on both. with "char s[]" it will work, but for "char *s" it will crash the program because you try to write to read-only memory region.
>>
>>108583738
Ah, my bad, empty brackets are only a pointer in parameters. In local variable with initializer it's more like "infer size for me".
>>
>>108583722
Why have an array type if it isn't even a proper type?
>>
>>108584336
Types are like training wheels. You don't need them if you know what you are doing. They exist so that brainlets who can't really comprehend mid sized or larger programs have an easier time.
>>
>>108584408
That doesn't answer my question.
>>
>>108584408
Wait until you discover that in some languages static type information can be used to choose diffent code paths, and types combined together like legos can be used as codegeneration spec.
> C++, Rust, Haskell
>>
Hmm, every time I want to start this project, I get some pace for half a day and then I realize how much that actually is.
So the question is: Should I really go down the fucking path building an entirely self-hosted computer running on a risc-v cpu with an FPGA?
Or should I just make a fun OS, written in C/Cpp and just have fun?
But self hosting would be good. I have never done self-hosting. But damn it's gonna be tuff

what do?
>>
>>108584336
diabeetus
i[5] == *(i + 5);
>>
>>108583075
I think this explains a lot for me, thanks.

>>108583015
I tested, there is no difference, it's 12 in both cases
#include <stdio.h>

int main() {
char s1[] = "Hello world";
char s2[12] = "Hello world";
char* s3 = "Hello world";

printf("%d\n", sizeof(s1)); // prints 12
printf("%d\n", sizeof(s2)); // prints 12
printf("%d\n", sizeof(s3)); // prints 8
return 0;
}

So >>108582958 is wrong, they are at least treated differently by sizeof.

>>108583260
Okay that is cool, thanks for this tip.
However, I still don't get what >>108582475's original intention was because his code segfaults, did he miss a static keyword somewhere?
>>
>>108584934
I meant to reply to >>108583193 instead of 108582958, and I meant to say that s1 and s2 are treated the same, but s1 and s2 are treated differently by sizeof
>>
>>108584661
Ok I got a plan to keep the motivation up. I don't have to go too hard on myself.
> Write more peripherals for the FPGA first (VGA, PS/2 (i should have them already working. just need to connect them to the new soc), possibly sdcard or spi flash for permanent storage)
> Test peripherals with normal C
> Write basic OS in assembler with gcc, such that it hopefully should be """easy""" to port it to a self-made assembler
lets see how far i get... Lets get le epic screen up and running
>>
>>108582943
meh I'd use a vim macro for that
>>
File: map.png (413.3 KB)
413.3 KB
413.3 KB PNG
I got Map working in MAIDS. The Map implementation is 12 lines long, including whitespace for readability. I will probably make Tree next.
>>
>>108585103
good. VGA is working.
Still got some issues with my PSRAM. I think the byte and half word access don't work as intended, but i have to pee really hard rn. Lets make coffee
>>
File: mfw2.jpg (44.7 KB)
44.7 KB
44.7 KB JPG
I want an excuse to learn Qt and perl.
>>
>>108585602
Learn raku instead.
>>
>>108585610
>https://en.wikipedia.org/wiki/Perl?useskin=monobook#Perl_6_and_Raku
Oh that's actually pretty cool and I can see why it might be better than standard perl.
>>
>>108582544
>maids
dilate tranny
>>
>>108585665
I don't know.
I just like the mascot. I wanted to try it once and their webpage says it has super cool features.
I remember especially a lot of shit you could theoretically use to build parsers super easy. Can't find the examples that I once saw, but something like this:
https://docs.raku.org/language/mop#parametric

Tho, I had no good excuse to learn it too and it looks so much different than other languages, that i just didn't make it in the end (tfw gotta listen to memekin park now)
>>
>>108582836
>>108582958
Ok, after watching this I finally understand the difference between arrays and pointers
https://www.youtube.com/watch?v=H18yIPSsgLg
tl;dr an array is the address itself, not a pointer to the address
>>
>>108585697
This is a maidposting site and everyone in this thread is a cute maid with huge boobs, just like you.
>>
>>108585867
okay now you're pushing it
>>
>>108585867
Kill yourself Eli
>>
>>108585874
He won't kill himself. He needs someone else to do it for him against his will.
>>
>>108585881
*raises paw*
>>
>>108585798
that video is fucking retarded
>>
>>108585881
*raises spork*
>>
>>108585987
I didn't watch the second half but he is obviously not thinking about technical differences since after "an array is not a pointer" he has now said "an array is an address", which arguably is LESS true (e.g. if an address isn't a pointer and is literally just an address, then an address presumably doesn't have size or type information) and he obviously isn't talking in a "these are different language constructs even if one decays to a pointer and is used extremely similarly" kind of way
he is unaware of const pointers
he then goes into some insane strawman about the address of the array, as if anyone likening arrays to pointers has ever suggested that it pointed to anything other than element 0
>>
>>108582544
me and my girls :)
>>
>>108585798
yes. Here: https://godbolt.org/z/Pz5ab38of
>>
>>108583738
You can allocate char *s so it's mutable with either notation type.
>>
Why is half the thread seething about anime maids?
>>
today's leetcode problem is another dynamic programming hard
>>
File: mctools.png (79.9 KB)
79.9 KB
79.9 KB PNG
Two small programs, one that will fully erase the memory card in slot 2, the other that will dump the entire contents into memory (which can be dumped across ps2client) and should then be able to be loaded as a memory card in PCSX2.
>>
>>108582764
You need to kill yourself.
>>
>>108582931
You seriously need to kill yourself. You are an utterly useless human being.

By the way, this guy is B*snian.
>>
when unit testing, if I need to create files, where am I supposed to place them? I was hoping I would have the option to create a synthetic file system that only exists within my program, but doesn't look like that's an option
>>
>>108586539
I think a lot of testing frameworks can create temporary directories which are automatically deleted for that kind of stuff.
>>
>>108586539
Are the tests creating the files? What language?
>>
>>108586563
C++
no, the files are not a function of the test itself, just things that are expected to exist in the real environment which don't exist in the testing environment / if I try to use the real one in the testing environment I can't test effectively (sysfs files, input event files, etc)
>>
>>108586539
if the real code is supposed to create files in some fixed path within the application folder, your unit tests should also have a base application folder with the same structure as the real application, and create temporary files at same subpaths as the real code

if the application writes to completely arbitrary paths then just make a common folder for unit tests, wherever
>>
>>108586216
YOOOOOOOO
>>
>>108586539
Stick it in RAM.
>>
uoh
>>
std::filesystem::temp_directory_path
>>
>>108587030
they should have called it trans directory path because there's a 41% chance the files in it will last much longer
>>
cars and boats are both vehicles
>>
Boat Boat = new Boat();
>>
>>108587153
what about boat cars
>>
>>108587153
The worst kind of "OOP" is when they try to abstract problems into physical objects.
>>
>>108587204
So no food analogies? Damn, that's ruff.
>>
why are so many of the rust maintainers into touhou and are also women
>>
>>108587204
goombas and koopas are both monsters
>>
>>108585798
> tl;dr an array is the address itself, not a pointer to the address
Nah, pointer and address are the same thing. So when you're saying pointer to the address, it's the same as pointer to pointer, which isn't the case here. Because in case of pointer here, it's pointer to the first element of array. No double pointers. Also print sizeof of char[] and char[10], when they are function parameters instead of local variables.
>>
>>108587153
One thing I can agree with is that they're both iterators.
>>
Neither GPT nor Claude can solve this.
How to obtain these 2 streams in posix_spawn with zero copying:
1 stdout
2 interleaved stdout + stderr
Any ideas?
>>
chat is it really that simple? did they have it figured out in 1995?
>>
>>108587563
Yes. It's a simple concept that the C++ committee somehow managed to turn into a nightmare swamp.
>>
>>108587563
lvalues often only exist in registers.
>>
File: leet1320.png (588.6 KB)
588.6 KB
588.6 KB PNG
>>108586216
I liked this one! for /dpt/ maids I highly recommend the maidreamin maid cafe! they were super cure and they nyan!
>>
>>108587669
we get it already, you're a pedophile obsessed with grooming toddler boys into crossdressing, you can stop posting already and go get help
>>
>>108587676
nah its just a regular cafe chain with cute girls dressed as maids that say nyan. you might be projecting.
>>
If it takes more than 200 pages to explain a programming language, it's an abomination.
>>
>>108587800
yeah but the non-abominations are useless so whatever
>>
>>108587676
Did you seriously mistake Mayuri for Lukako? You should probably kill yourself.
>>
>Rarely would a builder think about adding a new sub-basement to an existing 100-story building. Doing that would be very costly and would undoubtedly invite failure. Amazingly, users of software systems rarely think twice about asking for equivalent changes.
>>
File: 19-2519.png (552.6 KB)
552.6 KB
552.6 KB PNG
>>108587805
>Did you seriously mistake Mayuri for Lukako? You should probably kill yourself.
based okabe-san poster
>>
why isnt there a portable version of visual studio

i fucking hate microsoft
>>
>>108587896
VS Code appimage
>>
>>108587896
did you ask grok?
>>
>Specifically, programming without inheritance is distinctly not object-oriented; that would merely be programming with abstract data types.
I was secretly a procedural programmer all along
>>
I dislike how in C/C++, the standard convention that I see most people use when declaring pointers is to do:
>int *p;
instead of
>int* p;

You're declaring a variable that has the type "integer pointer". Why would you put the separator (space) between the two different parts of the type definition and then have no space between the name and part of the type definition?
At a first glance, it looks like you're declaring an integer with the name "*p".
There's literally no reason to do this. It's objectively worse in every way. Why do people do it?
>>
>>108588648
Because of this:
> int *p, k;
I would personally just disable multiple variable decls separated by commas, it's ugly and inconsistent.
>>
>>108588648
>bikeshedding
>>
>>108588648
When you're derefencing or passing an address to a function, you generally put the * and & before the container name, so it just becomes consistent syntax to declare it that way.
>>
File: file.png (166.4 KB)
166.4 KB
166.4 KB PNG
So basically corporate slopware jobs replaced real software engineers with low paid unskilled jeets and subsequently AI because corporate slopware became a solved problem that just required mindlessly filling in the blanks.
>>
>>108588765
Only for webshit, and hilariously, Windows itself, which they decided turning into webshit was a great idea because the ceo's brown relatives work cheap.
>>
File: smallcock.jpg (34.9 KB)
34.9 KB
34.9 KB JPG
Not long before AI people were hyped about the spaceship operator.
They said the spaceship operator will change everything. It will revolutionize coding.
Now what did it change? Nothing. Everything got worse. The spaceship operator started the downfall.
>>
>>108588648
don't matter. You just read it right to left and everything makes sense.
int *p - p is a pointer of int
int const * p - p is a pointer to a constant int
int * const p - p is a constant pointer to an int
int const * const p - p p is a constant pointer to a constant int
>>
>>108588765
are you going to hire a team of crack engineers from mit to design your payroll system, or are you going to pay a consultant to give you the uml diagram from his last employer
>>
>>108588716
you don't do that if you have more than 2 brain cells.
>>
>>108588765
The good thing is that AI can replace all the junior devs.
Now I don't have to bother teaching them pesky juniors anymore.
And when I go to pension there will be no more juniors that can move up to replace me. Based.
>>
>>108588765
>corporate slopware became a solved problem
Sorry, can't hear you over the impeding worldwide energy crunch.
>>
>>108588795
Never used that in my life
>>
File: file.png (22.5 KB)
22.5 KB
22.5 KB PNG
Lines you would never see in a modern tech book.
>>
>>108588868
>we hate SIMDs
>>
>>108587912
visual studio not visual studio code
>>
>>108588953
Well gee, probably because it's a product that you have to buy.
>>
>>108588968
no its not, there's a free edition

the program just entrenches itself heavily in the registry for some reason, and requires a botnet installer. blackmailing incompetents
>>
>>
>enjoys thinking about how to code something
>never actually codes anything
What is wrong with me?
>>
>>108588987
>use INI configuration files
>they just work
>oh wait, we actually don't like the way they work
>use the registry instead
>which is such a gargantuan glumblefuck that even Microsoft doesn't know how to drive it properly (if the registry schizo is to be believed)

It's a miracle that company survived its first ten years.
>>
>>108589131
man, if the windows registry is too complex for you then how do you even function in your day to day life
>>
>>108589153
You should ask MS that question.
>>
>>108589169
why? I've never had a single issue with visual studio, it's probably the greatest ide ever created to date and it literally just werkz out of the box
>>
>>108589120
actual coding is frustrating because shit goes wrong and half the time its not obvious whats happening so you have to spend time debugging to fix it and that's annoying
in your head everything works perfectly the first try
>>
>>108589187
>I've never had a single issue with visual studio
Not my problem if you don't value your time.
>>
Nigger
>>
>>108589120
You are a normal human bean.
Fantasy is much more exciting than real life. But real life can be much more rewarding.
But you have to start and starting is always cringe unbased 0/10.
People don't want to do sports every day. God said sports are homo. Tackle a horse. Yet they still convince themselves that it's good and still do it.
Just do it (tm)
>>
When you write a C++ program, this means that you write source code as text.
>>
>>108588751
The * and & are operators in that case, the * in
>int *p;
Is not an operator
>>
>>108589233
I am thirsty tho.
I will get some shasta and club mate
>>
>>108589233
factsman, my friend... this warps my mind, it fascinates me.
>>
I will not use docker
I have never used docker
I don't even know what docker is
>>
>>108589235
Have an awesome day bro.
>>
>>108589278
use podman instead, it's much better and also free.
docker is non-free bloatware
>>
>>108584934
sorry anon, you are right. it does segfault indeed when compiled with gcc, it totally works no problem when compiled with tcc, which i have nasty habit to use via :!tcc -run % in my favorite editor(tm) when doing throw-away stuff. my point was to illustrate how stack doesn't clean stack frame data after popping previous frame. so you can pass data without explicitly stating in arguments of a function. sorry again for bad illustration.
>>
auto floating_point value = get_ampere();

c++ bros... are you okay?
>>
>>108589655
You have to understand, there's one niche case where that might be useful under certain conditions so all variables need to be initialized like that forever now.
>>
>>108589678
>have a couple dozen ways to initialize a variable
>still no restrict keyword
>>
>>108589655
Wait, you're telling me they have to specify both auto and the type now? What kind of cuckery is this?
>>
>>108589882
The Danish-Autism variety.
>>
>>108589882
https://en.cppreference.com/w/cpp/concepts/floating_point
koding with koncepts
>>
File: mv_sp.mp4 (3.2 MB)
3.2 MB
3.2 MB MP4
>>108587669
These maids are very cute. Thank you for telling me about this cafe. I hope to go there some day.
>>
>>108589278
man I really hope fucking docker dies out. it only exists because people were too retarded to do their own sys admin. now that we have ai maybe we can just go back to not being shit.
>>
>>108588795
AIens
>>
>>108589655
>>108589882
>>108589921
> https://en.cppreference.com/w/cpp/concepts/floating_point
Oh wait, I finally realized what they did when I noticed both functions are called x2. So they overload it for all floating point types in first declaration and for all integral types in second one. This is actually based as fuck. It's quite hard to do the same in Haskell: it requires OverlappingInstances and problems don't end with that.
>>
>>108590416
>It's quite hard to do the same in Haskell: it requires OverlappingInstances and problems don't end with that.
Not that example which is stupid
* 2
also rewrite rules
>>
Before I knew it, I had mastered C++ without having ever written a single line of code.
>>
>>108590427
I agree rewrite rules are better fit for this particular optimization
>>
>>108590134
Ya they're super cute IRL and they came and asked what to draw on the omurice and they did the oishiku nare moe moe kyun thing and they say nyan a lot. as a casual anime enjoyer it was a 5/5 for me. I'm sure the other cafes are fun too. I definitely get the maid hype now haha!
>>
name 1 reason I shouldn't just make all my data global and put all my code in main and just jump around using goto instead of calling functions
>>
>>108590564
That's called continuation passing style.
>>
>>108590564
Performance would be too good, you'd be accused of hacking.
>>
>>108590564
That's how programming in any assembler feels like.
>>
>>108590564
probably fucks with CPU prediction
>>
>>108590564
You just described my Sega Genesis game before I gave up
>>
>>108590564
>>108590564
All of terry's code is position independent you little dumb fuck nigger.
Do you even know what a compiler is???
>>
File: file.png (4.1 KB)
4.1 KB
4.1 KB PNG
thoughts on my lecturer's usage of indentation?
>>
>>108590761
Looks like standard Python
>>
>>108590769
5 indents deep is pretty niggerlicious
>>
>>108590781
It's short enough that it's not a problem. What else would you do, make 3 "helper" functions that make it harder to read?
>>
>>108590781
Shython is pretty niggerlicious
>>
>>108590761
Not even close to becoming a problem. It's only too bad when indentation hits your editor line width.
>>
>>108590761
brother, your goal is not to be mad at your lecturers. Your goal is to win the game (get a degree).
Why do people not understand it? No matter how shitty the game is, just play it the best you can. Stop complaining, retard
>>
>>108590850
it's a math degree we dont do serious programming
also i'm really fucking struggling
>>
>>108590850
>complaining doesn't work
non-whites complaining got them auto-acceptance, free tuition, and no-fail degrees
>>
>>108590876
That has nothing to do with your racism.
The problem is rather that people cannot get into their mind that you can give everyone equal opportunities while still keeping competition up and acknowledging that not everyone can make it.
Making everything easymode is just a stupid way to cope with this dilemma
>>
>>108590781
Fussing about style and code structure at such a small scale is a novice trap. It's just a nested loop, a conditional and a with statement.

Until you've written at least 10,000 lines of Python for solving real problems you shouldn't worry about this kind of thing.
>>
File: file.png (74.3 KB)
74.3 KB
74.3 KB PNG
that's a lot of headers...
>>
>>108590449
Welcome to the club.

but we do not grant you the rank of master

younglings no
>>
>>108590876
>non-whites complaining got them auto-acceptance
Complaining had absolutely nothing to do with those outcomes.
>>
>>108590449
it's not that hard of a language, all things considered
>>
where do you host your daily blog?
do you do it in pure html like terry?
>>
>>108591438
In this thread.
>>
>>108591328
True, it's C with std::cout.
>>
>>108587153

but drive a car at tractor speed is it a tractor then
>>
>>108587296
>women
>>
>>108590761
What are you taking? Also what country? I think utf8 and casefold is pretty rare in America. I think you can do it all inline basically if you want.
def word_list(file):
return open(file).read().strip(string.punctuation).casefold().split()
>>
>>108592854
probably because we have dual boot linux on uni pcs
>>
>>108589647
>my point was to illustrate how stack doesn't clean stack frame data after popping previous frame
Is this something specific to TCC? I'm guessing GCC handles stack frames more cleanly and that's why it segfaults no?
>>
>>108593322
Dunno what tcc does, but gcc also doesn't segfault if you bother telling it to optimize your code. Because rather than loading whatever nonsense is on the stack:
mov rax, QWORD PTR [rbp-8]
mov rsi, rax

it simply zeroes RSI (the second parameter register):
xor esi, esi

And now that the string is NULL printf rather prints out "(null)". Why it bothers with the XOR? Beats me. UB is UB.
>>
>>108593531
>why xor x, x
usually its to break dependencies before re-using x
>>
>>108593549
Ah, I forgot - compilers are unable to keep track of register state across function calls. My bad assuming intelligence.
>>
>>108593591
It's not the compiler's fault that Windows forces its retarded ABI on everything.
>>
>>108593609
>Windows
Lol
Lmao
This is fucking SysV, retard. The second parameter on Windows' ABI would be RDX.
>>
>>108587176

https://www.youtube.com/watch?v=Be4bLNa15hk how long boat car could float in rain
>>
OOP
>Boat
>Car
>Vehicle
Reality
>Boat
>Car
>BoatCar
>SubCar
>Swimmable
>Roadable
>ExceptionHandlerFactory
>LoggableFuckerInterface
>Car2
>>
>>108593809
skill issue
>>
>>108593809
Aristotle had the same problem categorizing zebra
>>
Do jeets use C++?
>>
>>108594052
lol
lmao
no
>>
>>108593809
you modeled the problem domain incorrectly

>atom
>molecule
>alloy
>vehicular component
>vehicle (has multiple vehicle components)
>>
>>108594052
No. It's cow tools.
>>
>>108594052
99.9% of them basically attend Java trade school. They aren't computer scientists or software engineers. They don't know any theory. They don't know any math. They can't write algorithms. But if you just need someone who can go down a list and call a bunch of functions they'll do it for pennies.
>>
>>108594456
That's why C++ is perfect for them though.
>>
>>108590781
looks like an indent of 4 to me
utterly standard
>>
>>108594493
>you shouldn't optimize your code to the max because then the optimizer won't be able to apply its half-assed "optimizations"
>>
File: brainjak.png (77.1 KB)
77.1 KB
77.1 KB PNG
a car has a tire
the car owns its tire
a car has an owner
the car does not own its owner
>>
>>108594525
Yes, it happens all the time, in auto-vectorization specially.
>>
File: constprop.png (10.9 KB)
10.9 KB
10.9 KB PNG
>>108594728
Or constpropped functions.
>>
>>108594616

you pay car due or city take car to city car depot
depot keeps your car until certain time and its not yours anymore
>>
>>108594749
That's a good way to trigger an MCE.
>>
>>108593809
OOP
>Boat
>Car
>Vehicle
Reality
>Closure
>Iterator
>Thread
>>
>>108594616
It's all adhoc and not universal. If owner can't get out of car in your game, she might as well be owned by car.
>>
>>108594463
>That's why C++ is perfect for them though.
google literally invented go because they were bad at c++
>>
>200 posts
>no sperging out about factorio out of the blue
wtf has /dpt/ fallen..
>>
>They still use x86
Well, there's your fault. Use a real ISA and then you can stop arguing about botnet features and optimizations
>>
>>108595081
BACK IN MY DAYS, we used to have multiple threads per day. Now one thread lasts for a month lol
>>
x86-64++
>>
Say I wanted to make something like a text-based MUD from the 80s. What kind of cybersecurity knowledge do I need in current year to not get completely wrecked?
>>
>>108595299
security through obscurity because no one is going to bother trying to backdoor something that no one uses
>>
>hours without a post
did ai finally kill programming?
>>
>>108593591
>>108593609
The CPU you braindead retards
>>
>>108590672
I want to compile LLVM with m68k support enabled and try using it for Megadrive dev, could be cool
>>
>>108595548
It killed your brain, yea.
>>
>>108593609
You mean a calling convention? The thing that is logically mandatory to support any high level programming language on any platform?

I swear you retards watch other retards on YT and then just regurgitate shit you don't even understand. No wonder you're terrified of AI replacing you.
>>
I don't know shit, but I'm trying to teach myself Rust.
I need other people to see this so I know I'm not just retarded or something.

I was using .connect() on a TcpStream, but I wanted to add a timeout check so it doesn't hang.
connect() let me just pass my two constants that are a &str for the url and u16 for port.

using .connect_timeout() I have to do this:

.to_socket_addrs() on the tuple, get a result

unwrap result, get a iterator

iterate over the iterator, get a option

unwrap the option from the iterator, get a result

finally unwrap the result to assign it to a variable.


there has to be a better way to do this, I have to be retarded. Please tell me this isn't the proper way, because it seems insane to me to have to do all that.
>>
>>108595792
>trying to learn rust by making a network application
>>
>>108595792
>but I'm trying to teach myself Rust
damn, have you told your parents yet?
>>
>>108595852
i say no homo, and the balls never touch
>>
>>108595569
>CPU
Retard.
>>
>>108595860
>the balls never touch
of course not, they're rotting in some medical waste heap
>>
>>108595873
im sorry that happened to you. thoughts and prayers in your direction.
>>
If they really wanted me to use C++ modules then the entire Windows SDK would be available in module form.
>>
>>108595922
I tried switching to modules but it's broken on my version of CMake. When Debian and FreeBSD serve CMake 4 I'll try again.
>>
>>108595922
that would require microsoft creating and maintaining an entirely separate c++ implementation of all those libraries since they can't just deprecate the c versions that every other language relies on for interop
>>
>>108595935
If Copilot is so amazing that you should pay for it then surely it could handle such a trivial task on its own?
>>
>>108595922
I was under the impression that compilers had more room for optimization using the normal way
>>
Dear computer,
please build me an app that forces me to ride 20km every day with my bike.
I have to ride those 20km to get the daily unlock password to my pc.
Thanks
>>
>>108595081
What, you want me to continue posting about their retardations? Because I didn't think there was an appetite for that, neither for the countermeasures I've been proposing.
>>
File: hate.jpg (21.1 KB)
21.1 KB
21.1 KB JPG
>programming with hangover
>>
>>108596139
>he has hangovers in the first place
Yikes.
>>
ever go to a bro's house and take turns programming his computer?
>>
>>108596164
Never post that again. In fact, I'm hereby banning you from the internet entirely.
>>
>>108596139

failed to reach palmers peak before online anon?
>>
print ("Hello World!")
Alright thats all Ive learnt in the past 5 months. Am I ready to install Linux Arch bros?
>>
>>108596208
>Am I ready to install Linux Arch bros?
Yes, because that has nothing to do with koding.
A lot of normies run Arch, too, nowadays. It's the year of the linux desktop
>>
>>108595604
On Linux:
>you can use whatever calling convention you want for internal functions
On Windows:
>you MUST use Microsoft's terrible calling convention or unwinding will break and you get strange crashes
>>
>>108596385
>you can use whatever calling convention you want for internal functions
Lol no. Compilers are completely unable to divorce themselves from their ABIs, doesn't matter the system. Literal skill issue.
>>
>>
>>108596481
teaching abstraction in programming using non-programming examples has been a disaster for teaching object orientation
any tutorial or learning material that does the Dog extends Animal example should be immediately abandoned
>>
woman = reinterpret_cast<Female>(man);
>>
>>108596500
>If man is actually a Man object and you force it into a Female, that’s undefined behavior.
>>
>>108596500
In Germany you can just do a static cast on that. It's straight forward.
>>
>>108582544
anyone use flutter?? i want to get rid of all the themeing stuff in my app at work because it was bloat when i started working here and now its even more bloat but i was looking at moving to flutters theme data stuff and it just seems ass. especially for text you define a few font styles like header body etc then it magically pulls colours out of its ass or something. it doesnt seem like a nice system.

currently all theming is handled by a static class and i do like appadding.val, appcolors.val which works well but the ux guy creates too many colours and styles etc i jsut dont know how to make this neat, especially when hes talking about introducing a light mode. when i did theming in a personal app recently i did it all using custom classes + state management but chatgpt says this is a bad idea even though i think its better than the built in stuff

https://github.com/NO-ob/classiclauncher/tree/master/lib/models/theme
>>
humanity should've settled on a single programming language
>>
>>108597269
Not too long ago Jews were shilling Esperanto while shelling Gaza.
>>
>>108597309
do I look like I give a fuck about a bunch of arabs killing each other
>>
>decide to clean up codebase
>look at all types I declared myself to check if I can't use standard headers and definitions for internal Windows types and structures
>e.g. search for REALIZATION_INFO
>is being used twice in ntgdi.h, in declarations for NtGdiGetRealizationInfo
>the header doesn't include or declare the types it needs, including REALIZATION_INFO and ARCTYPE (e.g. for NtGdiArcInternal)
>which, according to ReactOS's source code, is some enum that the provider of these headers never seems to have heard about
>suddenly remember why I provided my own types
>>
>Rust deliberately does not have a goto statement.
toylang
>>
I did it
I watched every programming tutorial on youtube
>>
>>108597652
>I did it
>I watched every programming tutorial on youtube
do you have any recommendations? I haven't found anyone enjoyable to watch and when I do its usually like super basic comp 101 stuff. pretty much sicp is the only good tutorial.
>>
>>108597652
Watch them again. Maybe you have missed something and that's the reason why you aren't a professional yet
>>
>>108597693
>do you have any recommendations?
https://youtu.be/m_Dp4nMr_AY
>>
>>108597771
nta but there's something about fucking heaps that's unlearnable to me. no matter how many fucking times I watch the little how to implement a heap video I can't remember how to when I sit down to code it. also its just in most standard libs so there's really no reason... but the concept is so easy I feel like I should be able to. practice really is the only way :(
>>
>>108597801
Well, I can't tell you much about it either and I don't really care that much.
I have never implemented a heap sort or anything like that.
I have never implemented a malloc.
I don't care. If I need that, then I will look it up. I know what a heap in theory is and that's about all I need at this point in time.

For me it's not about actually learning and remembering stuff. It's about knowing what's available, having heard all of the terms at least once and roughly know what they mean and being able to look it up fast.
The memory will come by itself when you use shit regularly
>>
>>108597791
>>do you have any recommendations?
kek this is somehow way worse than a rick roll. its crazy there's billions of people who speak a language somehow WORSE and MORE annoying than the mars attacks aliens.
>>
i fucked up.
damn.
it's really an off-by-one(-clock-cycle)
>>
chat, are unions esoteric?
>>
>>108597652
>"and this is our son, he's quite the avid programming enthusiast!"
>*opens door*
>anon is masturbating to an ai-generated javascript tutorial narrated by a man with a thick indian accent
>>
Did you know in China they don't do "hello world", they do "nihao China"?
>>
>>108597931
>volatile
>esoteric
What stupid nigger wrote that shit? I hate people that don't understand how important volatile is
>>
>>108597931
>>108598063
You have to use std::union and std::volatile now
>>
>>108597652
Same, but junior female gymnastics.
>>
I feel like the idea of code as text files is outdated. IDEs should be 3d engines and code should be 3-dimensional objects within a 3-dimensional space.
>>
File: file.png (18.1 KB)
18.1 KB
18.1 KB PNG
>>108595922
they started once but then they gave up
>>
>>108597791
excuse me what the fuck
>>
>>108598170
Visual programming gets too complicated to view.
>>
>>108598031
In America it's "Ready to serve, Israel".
>>
>>108598502
cool story goldberg, now get back in there and die so the US can get that oil
oh, and don't forget to pay your toll fee for using the strait of Trump
>>
>>108597864
You have to search a great deal to find an actual usecase for malloc, like having to be backwards compatible to outdated systems like Linux or BSD that don't support allocation grouping.
>>
>>108598170
Text I am okay with but emulating typewriters less so.
I use columns in my editor to cope with the lack of respect for modern horizontal screens that is otherwise just wasted since text lines flow vertically.
We're not utilizing the full range of the monitor to our benefit, but I think simple spatial associations could help with this, like you see in note taking applications and shit like that.

Even basic things like images within the source code like Terry's editor has, has taken a long time of fucking around with old ass terminal extension standards to hack in support, meanwhile we can't even have variable width fonts in most terminal editors that also render dogshit slow.

What I'm saying is multiple aspects and layers of development tools being stagnant or lackluster - frustrate me too.
>>
>>108598502
>attacking a regime dedicated to spreading radical islam worldwide is le bad
>>
>>108597931
I just use std::variant. Maybe union is useful if you want to do C-style type fuckery.
>>
>>108594456
Most of my non-jeet coworkers are like that too, sadly
>>
>>108595052
Not quite. They invented it because C++ was bad. I think it was Rob or Ken that said they did development of Go (both the meetings and implementation) during the times it took for C++ projects to build. This is not a joke or hyperbole, they actually used the hours of waiting for builds to do this because all the waiting was a waste of time.
Go was popular within Google because it was simple and easy and this extended into the public release.

It's always extremely strange when people talk about this. No aspect of it makes sense.
You have the people complaining that Go is too easy, as if tools should be hard.
Then they attack the users, as if the authors and users did not invent C and Unix. Not that you should appeal like that, but if you're making that argument clearly prestige matters to you, but these guys are well respected veterans of the field, not unknown inexperienced amateurs.
If juniors can use this tool to great effect why wouldn't a senior be able to, the principles of the tools and language are merits to both sides of the gradient.

It always seems like people are unironically arguing that C++ is supposed to be better because it's more complex, more difficult to utilize (while also impossible to master), harder to be cohesive across standards and team boundaries, tooling that gets the funding and attention from the world while still being beat by Literally Who's hobby project, and so on and so on.
I'm borderline convinced that the people arguing that programming should be harder instead of easier, that tools should be more complex instead of simpler, are people that don't actually write many programs that matter to many people. Probably just salaried devs doing no-nothing work for decades that dies with their company, not ambitious novel software that the public ends up using at scale.
>>
>>108597340
>Work for multimillion dollar company
>CTO pushes LINQ queries heavily, first thing new hires are screened for.
>Work on speeding up some slow processes in the codebase.
>Culprit is nested .Where() LINQ queries doing linear searches over million+ sorted item collections
>Ctrl+F ".Where("
>343 results
>Ctrl+F ".BinarySearch("
>0 results
>>
>>108598680
C++ is flawed but If I want classes, static typing, and native performance then what alternative is there?
>>
>>108598726
>multimillion dollar company
with current year inflation that doesn't mean much
>>
>>108598854
$30mil revenue annually. Should we be this retarded?
>>
>>108598560
Midwit opinion. It's all about balance.
>>
>>108596385
>>108593591
Cdecl and fastcall both work on Windows. Fastcall uses registers for the first few parameters instead of sticking them on the stack. This worked fine as early as Watcom in MSDOS.
>>
>>108598347
Ironically they probably abandoned that because they thought it'd be immediately made obsolete by modules, and then they never bothered to make a module version.
>>
>>108598884
Midwit opinion. You don't negotiate with terrorists. Israel started doing that in the 90s, with devastating results.
>>
can I make visual studio like stub out a full designated initializer list for a struct?
>>
>>108582544
I want to make an expense tracking/budgeting app for my own personal uses. I'm imagining a desktop application, with potentially a mobile app later on for scanning receipts. I've only ever done Web Dev and that was like 10 years ago, so I have no idea what I'm supposed to use for this sort of thing. I'm developing on Ubuntu, but I'd like to be able to build to cross-platform. I'd also like it if whatever technologies I'll use are actually used in the real world, so I can get some valuable experience on the off chance I plan on including this project as a resume piece (I don't really plan on going into this industry, but it's just a nice bonus). I've seen all sort of odd sounding technologies, I really have no idea which one I should use. I assume /g/ can set me straight on what's worthwhile out there right now.
>>
>>108598904
>Cdecl and fastcall both work on Windows
Did you just wake up from a coma, boomer? https://learn.microsoft.com/en-us/cpp/build/x64-software-conventions?view=msvc-170

>>108598998
Enjoy your energy crunch then. The Strait will NEVER open again.
>>
>>108599516
no paging
>>
>>108599524
Which has to do what exactly with ABIs?
>>
>>108599542
I don't put code on teh stack. It's just the memory. I dont use paging
>>
>>108598680
Go follows a different design philosophy to keep the language small and simple. That is why it doesn't support stuff like operator and function overload. C++ follows a different view, where freedom is more important than keeping the language small and simple.
If you believe C++ is bad is because you have a skill issue.
Simple as.
>>
>>108599621
>I don't put code on teh stack.
Cute.
>>
>>108599628
>If you believe C++ is bad is because you have a skill issue.
>Simple as.
You bested yourself. Saying that C++ requires skill to use effectively is a demerit against it.
Somewhat ironic too since simplicity doesn't have such issues in the hand of a skilled person.
>>
>>108599628
>If you believe C++ is bad is because you have a skill issue.
Nah, it's garbage just on a code-generation basis - which is ignoring its libraries. Which, if we don't, turns it into absolute-clusterfuck territory.
>>
File: dbsgm.jpg (68.4 KB)
68.4 KB
68.4 KB JPG
>>108598513
Nice cope.
Trump is going to force a world war to keep his ass in power and away from prison where it belongs. He already has a private army loyal to him that will take citizens from the streets and drop them in the front lines. It worked in Ukraine, it will work in the US.
>>
File: urw.gif (443.4 KB)
443.4 KB
443.4 KB GIF
>>108599641
>>108599651
Non coders' opinions discarded.
>>
>>108599672
You might have me mixed up with someone else.
>>
>>108599672
>implying your retard opinion about our opinions matter
>>
So apparently it’s not rare to use the address of a static variable as a type ID in C++. This language is fucking bonkers
>>
>>108582544
how do you become an employable DEVELOPER?
I'm tired of these stupid faggot tutorials and guides and books when in reality I still can't even make my way around a codebase
all tutorials teach gay syntax which no one gives a fuck about and especially no stupid HR roastie or a teamlead who needs someone to write code for his shit
really seems like another catch 22
>>
>>108596509
I still have no idea what all of these casting functions are for
>>
>>108599868
You really just have to work on a big project to get used to the abstractions and design patterns. Enterprise codebases are on a totally different level than some fizzbuzzer named Chubek writing 200-line C files.
>>
>>108599868
you have two options
>have 10+ years of experience and an impressive track record
>be indian
>>
>>108599470
It helps if you've done some tracking of that sort of thing on paper. Knowing The Domain turns out to be real useful for doing apps.
You need an abstract model of what information you are working with. It might be trivial, or it might not be. Depends how complicated you want to go. The model doesn't say how the data is formatted; it just says what sort of information is in there.
You then figure out how to store an implementation of that model in a database. Databases are good at that. (For personal use, SQLite's pretty great.)
Then, you just need to write basic things for putting data into the DB and getting it out. Think "fill in a small form" for putting things in, and "get a table of some sort" for getting things out. Can be GUI. Can be web. Can be command line. For fancy-pants stuff, do all three; you have a common data model, so you can think about working that way.
>>
>>108599868
>how do you become an employable DEVELOPER?
Best way: don't just be a developer, be a developer who also knows an application domain. Huge demand for that, not as heavily impacted by AI.
>>
>>108599946
been saying that for years. long before AI was a factor
>>
>>108599868
>all tutorials teach gay syntax which no one gives a fuck about
In my honest opinion you can't learn to program by force.
You have to want to write software first and then learn how to do that.
I mean you have to want a specific piece of software to come into existence and then you need to learn how to make it.
You can not do this in reverse order. You don't learn how to paint and then create a masterpiece, you want to create a masterpiece and you learn how to paint.
Nobody can teach you how to create something of value conceptually, they can only tutorialize you on how to implement fundamentals close enough to what you need to know for you to extrapolate.

That said none of this matters in regards to employment. Most programmers, just like with most employees in all fields, are terrible at their job if they even work at all.
And being a good programmer doesn't really help you get employed as a programmer most of the time. But I don't think it hurts to be good at the thing you're trying to get a job for, and in this case I think to get good you need to have real passion from yourself not just lessons from others.
>>
>>108599946
Like what? Larp as House MD if you're healthcare admin panel dev? That's definitely very helpful.
>>
>>108600003
based
>>
>>108582836
>So what is best practice?
in terms of type alone, the pointer version
when you need read-only strings, the pointer version
if you need to allocate on the stack or have read-write permissions, the array version (you do what you have to do), and you cast it to a pointer type when passing to a function that uses it

char s[] = "Hello World"; will allocate the string on stack and write it at runtime if s is a local variable, if it's a global variable it will be stored at compile time in a read-write .data section. For char *s = "Hello World"; the data will be put in .rodata, a read-only section. The stack has read-write permissions so you can overwrite it without segfaulting. Segfault or not and read-write permissions have nothing to do with array vs pointer.
>>
>>108600077
>char s[] = "Hello World"; will allocate the string on stack and write it at runtime if s is a local variable, if it's a global variable it will be stored at compile time in a read-write .data section. For char *s = "Hello World"; the data will be put in .rodata, a read-only section.
Oooooooh so you're telling me the array version is writable but the pointer version is read-only? I thought string literals were always read-only and used to do stupid things like duplicating a string to make it writable or initializing each character manually, I didn't know I could just use the char s[], well I guess I learned something useful, thanks.
>>
what the fuck is that?
void func() { char *array_of_strings[] = { "first", "second" }; }'

0000000000000000 <func>:
0: 55 push rbp
1: 48 89 e5 mov rbp,rsp
4: 48 83 ec 20 sub rsp,0x20
8: 64 48 8b 04 25 28 00 mov rax,QWORD PTR fs:0x28
f: 00 00
11: 48 89 45 f8 mov QWORD PTR [rbp-0x8],rax
15: 31 c0 xor eax,eax
17: 48 8d 05 00 00 00 00 lea rax,[rip+0x0] # 1e <func+0x1e>
1e: 48 89 45 e0 mov QWORD PTR [rbp-0x20],rax
22: 48 8d 05 00 00 00 00 lea rax,[rip+0x0] # 29 <func+0x29>
29: 48 89 45 e8 mov QWORD PTR [rbp-0x18],rax
2d: 90 nop
2e: 48 8b 45 f8 mov rax,QWORD PTR [rbp-0x8]
32: 64 48 2b 04 25 28 00 sub rax,QWORD PTR fs:0x28
39: 00 00
3b: 74 05 je 42 <func+0x42>
3d: e8 00 00 00 00 call 42 <func+0x42>
42: c9 leave
43: c3 ret
>>
>>108600253
>thread locals
>function calls
Those are not the same code.
>>
>>108600169
>Oooooooh so you're telling me the array version is writable but the pointer version is read-only?
Indirectly, because of where the string is stored.

>I thought string literals were always read-only
They are, unless you do char string[] = "....". If you do char *array[] = { "first", "second" };, string laterals are still read-only.

ok:
char *array[] = { "first", "second" };
printf("%s\n", array[0]);
array[0]="hello";
printf("%s\n", array[0]);'


segfault:
char *array[] = { "first", "second" };
array[0][0] = 'a';


>used to do stupid things like duplicating a string to make it writable
You can do that, manually. You would allocate and do a memcpy, but in C there is no array copy operation/semantics. When you do char string[] = "hello";, "hello" doesn't even exist as static data, it only exists in code as immediate value that are stored to memory.
But in a scripting language for example, typically "hello" would indeed be a constant string and implicity memcopied. Unless there are optimizations which would turn the constant string into immediate value in the bytecode.
>>
>>108599868
Why don't you try and beat the registry schizo? That would put you ahead of 90% of /dpt/.
>>
>>108600290
>>thread locals
what's what the fs:0x28 thing is?
>>function calls
>Those are not the same code.
exactly my thinking

$ cat array.c
void func() { char *array_of_strings[] = { "first", "second" }; }

$ gcc -c -std=c99 -Wall -Wextra -Wpedantic array.c -o array.o
array.c: In function ‘func’:
array.c:1:21: warning: unused variable ‘array_of_strings’ [-Wunused-variable]
1 | void func() { char *array_of_strings[] = { "first", "second" }; }
| ^~~~~~~~~~~~~~~~

$ objdump -d -Mintel array.o
...
>>
>>108600319
And being ahead of 90% of /dpt/ means being ahead of 99% of actual devs.
>>
>>108600326
ah, it's stack protector bullshit
/tmp % cat array.c
void func() { char *array_of_strings[] = { "first", "second" }; }
/tmp % gcc -S -std=c99 -Wall -Wextra -Wpedantic array.c -masm=intel
array.c: In function ‘func’:
array.c:1:21: warning: unused variable ‘array_of_strings’ [-Wunused-variable]
1 | void func() { char *array_of_strings[] = { "first", "second" }; }
| ^~~~~~~~~~~~~~~~
/tmp % cat array.s
.file "array.c"
.intel_syntax noprefix
.text
.section .rodata
.LC0:
.string "first"
.LC1:
.string "second"
.text
.globl func
.type func, @function
func:
.LFB0:
.cfi_startproc
push rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
mov rbp, rsp
.cfi_def_cfa_register 6
sub rsp, 32
mov rax, QWORD PTR fs:40
mov QWORD PTR -8[rbp], rax
xor eax, eax
lea rax, .LC0[rip]
mov QWORD PTR -32[rbp], rax
lea rax, .LC1[rip]
mov QWORD PTR -24[rbp], rax
nop
mov rax, QWORD PTR -8[rbp]
sub rax, QWORD PTR fs:40
je .L2
call __stack_chk_fail@PLT
.L2:
leave
.cfi_def_cfa 7, 8
ret
.cfi_endproc
.LFE0:
.size func, .-func
.ident "GCC: (GNU) 15.2.1 20260209"
.section .note.GNU-stack,"",@progbits
>>
>>108600326
>that's what the fs:0x28 thing is?
yes
>>
>>108600326
>what's what the fs:0x28 thing is?
Specifically it looks like a sentinel, i.e. a random value with which addresses on the stack are "encrypted" via xoring. An attacker not knowing the sentinel doesn't know with what to xor his payload when smashing the stack, and as such is likely (not guaranteed!) to jump to some invalid address.
>>
>>108599672
You are visibly the least experienced programmer in the whole conversation, lol
>>
>>108582544
Next thread:
>>108600579
>>108600579
>>108600579
>>
new thread >>108601674
>new thread >>108601674
new thread >>108601674
>new thread >>108601674
old one reached bump limit

Reply to Thread #108582544


Supported: JPG, PNG, GIF, WebP, WebM, MP4, MP3 (max 4MB)