|
9 | 9 | Enumerator, |
10 | 10 | Field, |
11 | 11 | ForwardDecl, |
12 | | - Function, |
13 | 12 | FundamentalSpecifier, |
14 | 13 | Method, |
15 | 14 | MoveReference, |
@@ -1416,164 +1415,6 @@ def test_class_volatile_move_deleted_fn() -> None: |
1416 | 1415 | ) |
1417 | 1416 |
|
1418 | 1417 |
|
1419 | | -def test_class_bitfield_1() -> None: |
1420 | | - content = """ |
1421 | | - struct S { |
1422 | | - // will usually occupy 2 bytes: |
1423 | | - // 3 bits: value of b1 |
1424 | | - // 2 bits: unused |
1425 | | - // 6 bits: value of b2 |
1426 | | - // 2 bits: value of b3 |
1427 | | - // 3 bits: unused |
1428 | | - unsigned char b1 : 3, : 2, b2 : 6, b3 : 2; |
1429 | | - }; |
1430 | | - """ |
1431 | | - data = parse_string(content, cleandoc=True) |
1432 | | - |
1433 | | - assert data == ParsedData( |
1434 | | - namespace=NamespaceScope( |
1435 | | - classes=[ |
1436 | | - ClassScope( |
1437 | | - class_decl=ClassDecl( |
1438 | | - typename=PQName( |
1439 | | - segments=[NameSpecifier(name="S")], classkey="struct" |
1440 | | - ) |
1441 | | - ), |
1442 | | - fields=[ |
1443 | | - Field( |
1444 | | - name="b1", |
1445 | | - type=Type( |
1446 | | - typename=PQName( |
1447 | | - segments=[ |
1448 | | - FundamentalSpecifier(name="unsigned char") |
1449 | | - ] |
1450 | | - ) |
1451 | | - ), |
1452 | | - access="public", |
1453 | | - bits=3, |
1454 | | - ), |
1455 | | - Field( |
1456 | | - type=Type( |
1457 | | - typename=PQName( |
1458 | | - segments=[ |
1459 | | - FundamentalSpecifier(name="unsigned char") |
1460 | | - ] |
1461 | | - ) |
1462 | | - ), |
1463 | | - access="public", |
1464 | | - bits=2, |
1465 | | - ), |
1466 | | - Field( |
1467 | | - name="b2", |
1468 | | - type=Type( |
1469 | | - typename=PQName( |
1470 | | - segments=[ |
1471 | | - FundamentalSpecifier(name="unsigned char") |
1472 | | - ] |
1473 | | - ) |
1474 | | - ), |
1475 | | - access="public", |
1476 | | - bits=6, |
1477 | | - ), |
1478 | | - Field( |
1479 | | - name="b3", |
1480 | | - type=Type( |
1481 | | - typename=PQName( |
1482 | | - segments=[ |
1483 | | - FundamentalSpecifier(name="unsigned char") |
1484 | | - ] |
1485 | | - ) |
1486 | | - ), |
1487 | | - access="public", |
1488 | | - bits=2, |
1489 | | - ), |
1490 | | - ], |
1491 | | - ) |
1492 | | - ] |
1493 | | - ) |
1494 | | - ) |
1495 | | - |
1496 | | - |
1497 | | -def test_class_bitfield_2() -> None: |
1498 | | - content = """ |
1499 | | - struct HAL_ControlWord { |
1500 | | - int x : 1; |
1501 | | - int y : 1; |
1502 | | - }; |
1503 | | - typedef struct HAL_ControlWord HAL_ControlWord; |
1504 | | - int HAL_GetControlWord(HAL_ControlWord *controlWord); |
1505 | | - """ |
1506 | | - data = parse_string(content, cleandoc=True) |
1507 | | - |
1508 | | - assert data == ParsedData( |
1509 | | - namespace=NamespaceScope( |
1510 | | - classes=[ |
1511 | | - ClassScope( |
1512 | | - class_decl=ClassDecl( |
1513 | | - typename=PQName( |
1514 | | - segments=[NameSpecifier(name="HAL_ControlWord")], |
1515 | | - classkey="struct", |
1516 | | - ) |
1517 | | - ), |
1518 | | - fields=[ |
1519 | | - Field( |
1520 | | - name="x", |
1521 | | - type=Type( |
1522 | | - typename=PQName( |
1523 | | - segments=[FundamentalSpecifier(name="int")] |
1524 | | - ) |
1525 | | - ), |
1526 | | - access="public", |
1527 | | - bits=1, |
1528 | | - ), |
1529 | | - Field( |
1530 | | - name="y", |
1531 | | - type=Type( |
1532 | | - typename=PQName( |
1533 | | - segments=[FundamentalSpecifier(name="int")] |
1534 | | - ) |
1535 | | - ), |
1536 | | - access="public", |
1537 | | - bits=1, |
1538 | | - ), |
1539 | | - ], |
1540 | | - ) |
1541 | | - ], |
1542 | | - functions=[ |
1543 | | - Function( |
1544 | | - return_type=Type( |
1545 | | - typename=PQName(segments=[FundamentalSpecifier(name="int")]) |
1546 | | - ), |
1547 | | - name=PQName(segments=[NameSpecifier(name="HAL_GetControlWord")]), |
1548 | | - parameters=[ |
1549 | | - Parameter( |
1550 | | - type=Pointer( |
1551 | | - ptr_to=Type( |
1552 | | - typename=PQName( |
1553 | | - segments=[NameSpecifier(name="HAL_ControlWord")] |
1554 | | - ) |
1555 | | - ) |
1556 | | - ), |
1557 | | - name="controlWord", |
1558 | | - ) |
1559 | | - ], |
1560 | | - ) |
1561 | | - ], |
1562 | | - typedefs=[ |
1563 | | - Typedef( |
1564 | | - type=Type( |
1565 | | - typename=PQName( |
1566 | | - segments=[NameSpecifier(name="HAL_ControlWord")], |
1567 | | - classkey="struct", |
1568 | | - ) |
1569 | | - ), |
1570 | | - name="HAL_ControlWord", |
1571 | | - ) |
1572 | | - ], |
1573 | | - ) |
1574 | | - ) |
1575 | | - |
1576 | | - |
1577 | 1418 | def test_class_anon_struct_as_globalvar() -> None: |
1578 | 1419 | content = """ |
1579 | 1420 | struct { |
|
0 commit comments