I'm using std::uint32\_t and for some reason it's a different data type than unsigned long which is an unsigned 32 on my platform (ARM Cortex M4 K20) ... Any ideas?

Nevermind I guess sometimes you want variable-sized types:

```
typedef unsigned short Integer16;
typedef std::uint32_t Integer32;

typedef unsigned int FastInteger16;
typedef unsigned long FastInteger32;

```

Any problems with this?