- Fix decl attribute in the wrong place causing an assertion. #2581

This commit is contained in:
Christoffer Lerno
2025-11-16 22:57:37 +01:00
parent b16ee3119d
commit 1ea181524e
3 changed files with 8 additions and 1 deletions

View File

@@ -28,6 +28,7 @@
- `overflow_*` vector ops now correctly return a bool vector. - `overflow_*` vector ops now correctly return a bool vector.
- Regression vector ABI: npot vectors would load incorrectly from pointers and other things. #2576 - Regression vector ABI: npot vectors would load incorrectly from pointers and other things. #2576
- Using `defer catch` with a (void), would cause an assertion. #2580 - Using `defer catch` with a (void), would cause an assertion. #2580
- Fix decl attribute in the wrong place causing an assertion. #2581
### Stdlib changes ### Stdlib changes

View File

@@ -1964,7 +1964,8 @@ static inline Decl *parse_typedef_declaration(ParseContext *c)
} }
else else
{ {
RETURN_PRINT_ERROR_HERE("Expected only attribute '@align'."); PRINT_ERROR_HERE("Expected only attribute '@align' here, if you want to add an attribute to the typedef itself, place it before the '='.");
return poisoned_decl;
} }
} }
RANGE_EXTEND_PREV(decl); RANGE_EXTEND_PREV(decl);

View File

@@ -0,0 +1,5 @@
module foo;
typedef Int = int @structlike; // #error: Expected only attribute
fn int main() => 0;