The first set never makes sense since JavaScript is garbage collected.
The second set never makes sense since JavaScript is single-threaded.
The third set might make sense in the future if we decide to take advantage of TypeScript's --strictNullChecks feature.
Rather than silently ignoring these, we should emit an error.
Right now, the following property attributes are silently ignored:
assign
,retain
,strong
,unsafe_unretained
,weak
atomic
,nonatomic
nonnull
,null_resettable
,null_unspecified
,nullable
The first set never makes sense since JavaScript is garbage collected. The second set never makes sense since JavaScript is single-threaded. The third set might make sense in the future if we decide to take advantage of TypeScript's
--strictNullChecks
feature.Rather than silently ignoring these, we should emit an error.