Hi hackers,
    When I was reading postgres code, I found there is a wierd type cast. I'm 
pondering if it is necessary.

```
    /* Allocate a new typmod number.  This will be wasted if we error out. */
    typmod = (int)
        
pg_atomic_fetch_add_u32(&CurrentSession->shared_typmod_registry->next_typmod,
                                1);

```
    typmod has u32 type, but we cast it to int first.

    And I also have some confusion about why `NextRecordTypmod` and 
`TupleDescData.tdtypmod` has type of int32, but `SharedTypmodTableEntry.typmod` 
has type of uint32.

Best regard,
Qinghao Huang

Reply via email to