type attributes

I'm adding the noreturn type attribute. We can do this in one of two ways, as a bit, or use the general mechanism used by Decls. I kinda like the general method used by decls, but wanted to see what others thought? Don't worry, I wasn't going to pollute all types, I thought I'd put it into ExtQualType, seems like a reasonable place to put it.

I'm adding the noreturn type attribute. We can do this in one of two
ways, as a bit, or use the general mechanism used by Decls. I kinda
like the general method used by decls, but wanted to see what others
thought?

Either way sounds okay; I think I prefer the general method as well.

Don't worry, I wasn't going to pollute all types, I thought
I'd put it into ExtQualType, seems like a reasonable place to put it.

Have you considered putting the noreturn type attribute on
FunctionType? It's not a generic qualifier, but rather a property of
functions, so I can't see why you'd want it to apply to anything other
than a FunctionType, or maybe a BlockPointerType.

-Eli

I'm adding the noreturn type attribute. We can do this in one of two
ways, as a bit, or use the general mechanism used by Decls. I kinda
like the general method used by decls, but wanted to see what others
thought?

Either way sounds okay; I think I prefer the general method as well.

Ah, the type uniquing code isn't going to like the general method, and type attributes are fairly rare, so I think I'll skip it. I think I'll defer until a machine port wanted to add type attributes....

Have you considered putting the noreturn type attribute on
FunctionType?

Hum... I'll have to see if I can sneak in a bit there without modifying the size much. The biggest issue is that 99% of those type would never have one of these, so we in general don't want to pay the cost of them. gcc runs into memory problems because every decl has oodles of data, most of which is never used; we'd like to avoid that.

Thanks.

I'm adding the noreturn type attribute. We can do this in one of two
ways, as a bit, or use the general mechanism used by Decls. I kinda
like the general method used by decls, but wanted to see what others
thought?

Either way sounds okay; I think I prefer the general method as well.

Ah, the type uniquing code isn't going to like the general method, and
type attributes are fairly rare, so I think I'll skip it. I think
I'll defer until a machine port wanted to add type attributes....

*shudder*

Have you considered putting the noreturn type attribute on
FunctionType?

Hum... I'll have to see if I can sneak in a bit there without
modifying the size much.

FunctionType has 28 unused bits; grabbing one won't cost us anything.

  - Doug