@@ -1178,38 +1178,33 @@ impl SymbolTableBuilder {
1178
1178
let symbol = if let Some ( symbol) = table. symbols . get_mut ( name. as_ref ( ) ) {
1179
1179
// Role already set..
1180
1180
match role {
1181
- SymbolUsage :: Global => {
1182
- if !symbol. is_global ( ) {
1183
- if symbol. is_parameter {
1184
- return Err ( SymbolTableError {
1185
- error : format ! ( "name '{}' is parameter and global" , name) ,
1186
- location,
1187
- } ) ;
1188
- }
1189
- if symbol. is_referenced {
1190
- return Err ( SymbolTableError {
1191
- error : format ! (
1192
- "name '{}' is used prior to global declaration" ,
1193
- name
1194
- ) ,
1195
- location,
1196
- } ) ;
1197
- }
1198
- if symbol. is_annotated {
1199
- return Err ( SymbolTableError {
1200
- error : format ! ( "annotated name '{}' can't be global" , name) ,
1201
- location,
1202
- } ) ;
1203
- }
1204
- if symbol. is_assigned {
1205
- return Err ( SymbolTableError {
1206
- error : format ! (
1207
- "name '{}' is assigned to before global declaration" ,
1208
- name
1209
- ) ,
1210
- location,
1211
- } ) ;
1212
- }
1181
+ SymbolUsage :: Global if !symbol. is_global ( ) => {
1182
+ if symbol. is_parameter {
1183
+ return Err ( SymbolTableError {
1184
+ error : format ! ( "name '{}' is parameter and global" , name) ,
1185
+ location,
1186
+ } ) ;
1187
+ }
1188
+ if symbol. is_referenced {
1189
+ return Err ( SymbolTableError {
1190
+ error : format ! ( "name '{}' is used prior to global declaration" , name) ,
1191
+ location,
1192
+ } ) ;
1193
+ }
1194
+ if symbol. is_annotated {
1195
+ return Err ( SymbolTableError {
1196
+ error : format ! ( "annotated name '{}' can't be global" , name) ,
1197
+ location,
1198
+ } ) ;
1199
+ }
1200
+ if symbol. is_assigned {
1201
+ return Err ( SymbolTableError {
1202
+ error : format ! (
1203
+ "name '{}' is assigned to before global declaration" ,
1204
+ name
1205
+ ) ,
1206
+ location,
1207
+ } ) ;
1213
1208
}
1214
1209
}
1215
1210
SymbolUsage :: Nonlocal => {
0 commit comments