94
submitted 1 week ago by ikidd@lemmy.world to c/linux@programming.dev
you are viewing a single comment's thread
view the rest of the comments
[-] DapperPenguin@programming.dev 13 points 1 week ago* (last edited 1 week ago)

I appreciate rust as much as the next dev. But you can define your own types in C just as well? And with the proper warnings and errors -Wall -Werror in place, any warning is an error, and implicit conversions should probably be a warning right?

ETA: Just tried with the following C code and could not get it to fail with gcc.

typedef int t_0;
typedef long t_1;

t_0 test() {
  t_1 foo = 1;
  return foo;
}

Tried with gcc -Wall -Wextra -Wpedantic -Werror and it compiled just fine.

[-] brisk@aussie.zone 5 points 6 days ago

typedef in C just make an alias to the same type. structs have nominal typing though:

// this typedef is optional to avoid having to refer to the struct tag when referencing the types
typedef struct {int} t_0;
typedef struct {long} t_1;

t_0 test() {
  t_1 foo = {1};
  return foo; // error
}
this post was submitted on 11 Jul 2025
94 points (100.0% liked)

Linux

8467 readers
822 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS