PiJoules wrote:

Ok rather than making the attr its own AST node, I found it much simpler to 
make it part of the function type. Rather than adding it to 
`FunctionTypeExtraBitfields` I instead added it to `ExtInfo`. I did since it 
looks like if I wanted to add a bit to `FunctionTypeExtraBitfields`, then I'd 
also need to set a bit in `ExtProtoInfo` to indicate the extra bitfields should 
be allocated, but that feels like I'd be adding an extra redundant bit. Rather 
than adding it in `ExtProtoInfo` though, I moved it to  `ExtInfo` since that 
would also cover the no-prototype functions and there were some unused bits in 
that same struct.

> I did a quick look, I didn't see anything about variable-type-aliases, static 
> member functions, or explicit-this-type member functions, operators, etc.

I also added more Frontend test cases to cover these. Lemme know if there's 
other coverage I'm missing.

There's some stuff in this patch that is also somewhat independent of the 
attribute (like the `IsFunctionConversion` changes), so if this patch looks ok 
at a high level, I can start breaking it up into more independent patches.

https://github.com/llvm/llvm-project/pull/135836
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to