Elektrine
Log in Register
Paige Chat Timeline Gallery Friends Email Drive DNS Private DNS Domains VPN Kairo Nerve
Remote

Björkus "No time_t to Die" Dorkus

@thephd@pony.social
mastodon 4.7.3+glitch
  • Open on pony.social

🎇 Somehow Is A C Expert ✨ Smooches Unicode-kun 💕 The C Standard Cannot Be Replaced And Will Never Be Destroyed. 🧟‍♀️ Pixel Art is Cool ✨ Banner by Wus (Reckless Moss), Avatar by Kiing Kiismet!

5514 Followers
1419 Following
50 Posts
Joined November 04, 2022
Maximum Poast!:
https://thephd.dev/
🕊 | 🥚 | 🥃:
https://twitter.com/__phantomderp
🎨 Banner:
https://recklessmoss.carrd.co/
🎨 Avatar:
https://kiingkiismet.com/
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 2w ago

Another thing AI has taken from me is just being able to use normal VPNs with a lot of services. So many crawlers use VPN and Datacenter IP addresses that even these work VPNs get ass-blasted by something as fundamental as the login page for this academic shit.

I hate it here.

68
0
11
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 2mo ago
Really, really cool working with these things.
72
8
18
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
MORAL OF THE STORY: Documentation is for losers. Trace the binaries, read the source code, wireshark the traffic. Never be a good boy. Be a bad girl.
155
8
51
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 2w ago

@navi@social.vlhl.dev I saw the patches go out on the mailing list -- lemme know if there's anything you need me to do for you w.r.t. helping it along!

3
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 2mo ago

Alright, officially talking to ISO to get this turned from a draft into a real thing. Thanks to everyone for participating!

https://www.open-std.org/JTC1/SC22/WG14/www/docs/n3928.pdf

open-std.org
30
0
7
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 2mo ago

"I think I'll switch up my diet to eat more greens."

I could not have worse timing.

24
1
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 3mo ago
Working on compilers is fun, I should do this for a living sometime.
36
0
2
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 2mo ago

C++ now has thread attributes and because it took me so long, they got theirs before C got ours:

https://eel.is/c++draft/thread.threads#thread.attributes

https://thephd.dev/_vendor/future_cxx/papers/C%20-%20Thread%20Attributes%20-%20Implementation%20Extensible%20and%20ABI-Resistant.html

Just goes to show how dogshit slow I am that C++ can figure it out with more features before C does.

eel.is
17
1
2
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
Conceptually of COURSE this makes sense because GCC switched to using C++ Y E A R S ago but like, I was following the documentation! I was sticking to what they told me to set and deleting build dirs and reconfiguring like a good boy!! I SHOULD'VE JUST READ THE MAKEFILES FROM THE START. LIES LIES LIES LIES LIES LIES LIES LIES LIES LIES LIES https://gcc.gnu.org/install/build.html LIES LIES LIES LIES LIES LIES LIES LIES LIES LIES LIES
gcc.gnu.org

Installing GCC: Building - GNU Project

Installing GCC: Building

41
3
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
IT'S *_CXXFLAGS AND NOT JUST *_CFLAGS?! I should've never trusted the damn documentation always just read the source code fuck this noise
39
9
5
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
Before this was the popular one it was StackedCrooked's coliru. Most people who are mildly competent at their task check the compiler output, then test that output against a battery of tests and behaviors. Do not let these illiterate chuds rewrite history.
25
3
2
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
GCC allows non-FSF contributions as long as you have signoff. I still have to separate the thing out into 3 patches but, hopefully soon, GCC will also be on the C and C++ (thephd.dev) compilers. Maybe. I sure hope I did it right / it works. https://github.com/compiler-explorer/compiler-explorer/pull/8670
github.com
21
9
2
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago

Extremely important poll: what animal / anthropomorphic animal face should I try to sneak into LLVM/GCC by way of tinary binary / ascii art?

22
29
20
1
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
Is the BOOT_CFLAGS, STAGE1_CFLAGS, etc... variables from the building/installing instructions outdated??? WHy is everything building with -g -O2???
16
25
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
ooOOoOOooooh working on this makes me so, SO fucking mad.
16
22
1
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
If you have an ASCII art of a raccoon you'd like to pass off that'd be welcome. I'm probably going to get one of Wikimedia and then grayscale it and then convert it to a UTF-8 ASCII sequence. (UTF-8 ASCII specifically because EBCDIC exists and WILL hurt you.)
12
8
3
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
What in God's Name is wrong with libstdc++ and GCC that there isn't a proper compile-time assert / compile-time abort feature??
9
2
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@eniko@mastodon.gamedev.place @shana@mastodon.gamedev.place honored I'm among these folks but most of my stuff is ranting and being openly wrong on the internet, alas
6
2
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@simontatham -- not to bother you but since this is now live you can probably kick the tires a little bit on it in Godbolt. I think it solves most of your concerns (save what happens in the default: branch!). Still need to figure out if I need braces around the _Generic bits to see if it works.
6
13
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@wren6991 It might not be, soon!!
5
1
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
There, much better looking. (And the note about 'locus' is nicer and less snobby.)
4
0
1
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@typeswitch@gamedev.lgbt @fay59@tech.lgbt Yeah, I think auto should be reserved for if it ever gets more advanced and we use auto for something closer to "safe type deduction that does not trigger type checking errors" rather than another way to spell default. auto would also provide opportunities for const auto x: (all const variables but not mutable ones), auto *p: (all pointer variables), and things of that nature.
3
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@pinskia Thanks, I'll use the wiki more often because it looks more up to date.
3
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 4mo ago
Replying to
@simontatham@hachyderm.io Following up, it's indeed fixed! https://godbolt.org/z/4Wv31bej8 Thanks for poking at it, should be more (or less?) okay now.
Compiler Explorer - C (x86-64 clang (thephd.dev))
godbolt.org

Compiler Explorer - C (x86-64 clang (thephd.dev))

struct MyStringBuffer { const char *ptr; size_t len; }; #define string_length(x) \ _Generic(x, \ double: (int)0.0, \ int s: s, \ const char *foo: strlen(foo), \ struct MyStringBuffer *bar: bar

2
1
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@poliorcetics@social.treehouse.systems the magic is in the identifier after the default and after the int in the _Generic: it allows you to take an ident on the value put into a C _Generic expression so you don't have to keep re-computing the value to use it in the branches. It also gives safe type checking.
2
3
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@dysfun I'm tryin'.
2
1
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@kabel42@polymaths.social I wasn't being specific; I need something I can call in a consteval function that will trigger an error, but only if the compiler tries to evaluate it. It seems the only function that does that is std::terminate().
2
1
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 4mo ago
Replying to
@simontatham@hachyderm.io It was more of an implementation peculiarity than anything else, really. Internally, we check if what is coming in is a modifiable lvalue and -- if it is -- take a reference to it. Unfortunately the way we were doing it before took a reference to the stripped-down type if certain kinds of pointers got involved, and this wrecked parsing a little bit. But that part's been fixed and the modifiable lvalue bit is only taken later.
1
8
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@simontatham@hachyderm.io Yeah, that was a weirdly C++-ish error message; thanks for reporting. Seems like something got crossed in the parsing bit; I pushed a fix to the thephd.dev branch and it'll eventually reflect there. (Probably gotta wait until Monday midday to test again on Godbolt.) On the bright side, on my local branch it worked out just fine when I tested your code against the modified patch so that was nice.
1
11
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@pinskia@hachyderm.io @CursedSilicon@social.restless.systems Well, I'm all registered up. Now I just gotta shoot an e-mail off to somebody.
1
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@pinskia@hachyderm.io @CursedSilicon@social.restless.systems this might make splitting up a PR for libstdc++ versus gcc/libcpp a lot more manageable...but I don't think I qualify, lol.
1
2
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@CursedSilicon@social.restless.systems No, they don't. I'm working off of a mirror on GitHub (gcc-mirror).
1
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@ami@floss.social I think I'd have to split this into 2 PRs and then need to fortify the tests. That's probably trivial for somebody else, but I'm exhausted.
1
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@mirabilos well guess who is a moron and doesn't work with "standard" mixed programs :D
1
2
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@cb not a dumb question, the exact right answer actually!! The docs said cflags but I had to change cxxflags (not cppflags) too!!
1
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@madduci It hasn't always been! That's the point!!! https://gcc.gnu.org/install/build.html
gcc.gnu.org

Installing GCC: Building - GNU Project

Installing GCC: Building

1
1
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@malwareminigun It is the most reasonable. I was trying to build more-debuggable binaries, though, and optimizations were happening that were rearranging conditionals and making me go crazy. I was trying to inject the right build flags and it turns out the stuff on the official website was incorrect (the wiki has a better run of it, so I probably should've started there). A lot of wasted time.
1
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Easier than expected, the docs for making changes are great! Thanks @mattgodbolt@hachyderm.io for making this super painless to do. https://github.com/compiler-explorer/clang-builder/pull/107https://github.com/compiler-explorer/compiler-workflows/pull/62https://github.com/compiler-explorer/infra/pull/2086https://github.com/compiler-explorer/compiler-explorer/pull/8662
github.com
0
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
(Clang won't accept until The Last Checkbox on that is hit, so I guess I just sit on my ass and wait a few months now.)
0
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 4mo ago
Replying to
@simontatham@hachyderm.io nesting generics is a little less.problematic but nested macro and expansion can get compile-time expensive.
0
1
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 4mo ago
Replying to
@simontatham@hachyderm.io I believe @erisceleste@tech.lgbt has some opinions on this and has done stuff like this before, so she can chime in about it.
0
4
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 4mo ago
Replying to
@simontatham@hachyderm.io I have no good solution for multi match generics other than the function pointer arguments trick. I have sat down to try and figure out a non-amviguous syntax for this but it has not worked out at all. It's similar to the problem of trying to initialize multiple different types in for loop init expressions: very little syntactic space to maneuver. That being said, maybe we need to grow a little beyond Generic if we want this kind of power.
0
6
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@zygoon Not a clue. I don't know if that's possible but you could try reading the cross compile and ./configure help -- maybe it'll tell you how to build with a statically-bundled libc and libstdc++. I was under the impression a static build was the default.
0
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@uecker Right now doing int x = _Generic(1, int v: v); is just an error in the implementation. We can maybe fix up _Generic to bless such a selection as a constant expression, but I'm in no rush to do that right now honestly.
0
0
0
0
Open post
Björkus "No time_t to Die" Dorkus @thephd@pony.social
· 5mo ago
Replying to
@alison@burningboard.net @poliorcetics@social.treehouse.systems _Generic comes from C11, yeah. It's been there for 15 years, but I believe MSVC was lagging on it until very recently (like 1.5 years ago?)
0
0
0
0
Back
313k7r1n3
Elektrine

Tor hidden service

elekhj7afj4qnrr4yd3bkzslsyo5jgfxw3orgjkhlcxifueodybyiiad.onion

I2P eepsite

j6b6cyk6gjmepjih7jjadxgxvvf3lzzujljuu2v4biemzpg3naya.b32.i2p

Platform

  • Email
  • Chat
  • Timeline
  • VPN
  • DNS

Company

  • About
  • Contact
  • FAQ
  • Lite (no JS)

Legal

  • Terms of Service
  • Privacy Policy
  • Transparency Report
  • Report Abuse
  • Warrant Canary
  • VPN Policy

Support

  • support@elektrine.com
  • Report Security Issue
Mail client setup IMAP mail.elektrine.com:993 POP3 mail.elektrine.com:995 SMTP mail.elektrine.com:465
© 2026 Elektrine. All rights reserved. Server: 05:14:40 UTC