diff --git a/src/com2ann.py b/src/com2ann.py
index b3a892e..9e853bd 100644
--- a/src/com2ann.py
+++ b/src/com2ann.py
@@ -467,7 +467,8 @@ def process_assign(comment: AssignData, data: FileData,
     # We perform the tasks in order from larger line/columns to smaller ones
     # to avoid shuffling the line column numbers in following code.
     # First remove the type comment.
-    if re.search(TYPE_COM, lines[rv_end]):
+    match = re.search(TYPE_COM, lines[rv_end])
+    if match and not match.group(1).lstrip().startswith('ignore'):
         lines[rv_end] = strip_type_comment(lines[rv_end])
     else:
         # Special case: type comment moved to a separate continuation line.

diff --git a/src/test_com2ann.py b/src/test_com2ann.py
index 2b93328..37236ec 100644
--- a/src/test_com2ann.py
+++ b/src/test_com2ann.py
@@ -228,6 +228,23 @@ class AssignTestCase(BaseTestCase):
                 | {other}
             )
             """)
+        self.check(
+            """
+            foo = object()
+
+            bar = (
+                # Comment which explains why this ignored
+                foo.quox   # type: ignore[attribute]
+            )  # type: Mapping[str, Distribution]
+            """,
+            """
+            foo = object()
+
+            bar: Mapping[str, Distribution] = (
+                # Comment which explains why this ignored
+                foo.quox   # type: ignore[attribute]
+            )
+            """)
 
     def test_with_for(self) -> None:
         self.check(

Type comment left in place when expression is type ignored
Thanks for this tool, it's really useful :)

If you have code like this:
``` python
    foo = object()

    bar = (
        # Comment which explains why this ignored
        foo.quox   # type: ignore[attribute]
    )  # type: Mapping[str, Distribution]
```
Then after running `com2ann` you end up with:
``` python
    foo = object()

    bar: Mapping[str, int] = (
        # Comment which explains why this ignored
        foo.quox   # type: ignore[attribute]
    )  # type: Mapping[str, int]
```
which `mypy` then complains about due to the double signature.

The intermediate (explanatory) comment doesn't seem to be related, though the `type: ignore` comment is.
src/test_com2ann.py::AssignTestCase::test_continuation_using_parens
src/test_com2ann.py::AssignTestCase::test_basics src/test_com2ann.py::AssignTestCase::test_coding_kept src/test_com2ann.py::AssignTestCase::test_comment_on_separate_line src/test_com2ann.py::AssignTestCase::test_complete_tuple src/test_com2ann.py::AssignTestCase::test_complex_targets src/test_com2ann.py::AssignTestCase::test_drop_Ellipsis src/test_com2ann.py::AssignTestCase::test_drop_None src/test_com2ann.py::AssignTestCase::test_literal_types src/test_com2ann.py::AssignTestCase::test_multi_line_assign src/test_com2ann.py::AssignTestCase::test_multi_line_tuple_value src/test_com2ann.py::AssignTestCase::test_newline src/test_com2ann.py::AssignTestCase::test_parenthesized_lhs src/test_com2ann.py::AssignTestCase::test_pattern src/test_com2ann.py::AssignTestCase::test_type_ignore src/test_com2ann.py::AssignTestCase::test_uneven_spacing src/test_com2ann.py::AssignTestCase::test_with_for src/test_com2ann.py::AssignTestCase::test_wrong src/test_com2ann.py::FunctionTestCase::test_async_single src/test_com2ann.py::FunctionTestCase::test_combined_annotations_multi src/test_com2ann.py::FunctionTestCase::test_combined_annotations_single src/test_com2ann.py::FunctionTestCase::test_complex_kinds src/test_com2ann.py::FunctionTestCase::test_decorator_body src/test_com2ann.py::FunctionTestCase::test_keyword_only_args src/test_com2ann.py::FunctionTestCase::test_literal_type src/test_com2ann.py::FunctionTestCase::test_next_line_comment src/test_com2ann.py::FunctionTestCase::test_self_argument src/test_com2ann.py::FunctionTestCase::test_single src/test_com2ann.py::FunctionTestCase::test_wrap_lines src/test_com2ann.py::FunctionTestCase::test_wrap_lines_error_code src/test_com2ann.py::LineReportingTestCase::test_confusing_function_comments src/test_com2ann.py::LineReportingTestCase::test_invalid_function_comments src/test_com2ann.py::LineReportingTestCase::test_simple_assign src/test_com2ann.py::LineReportingTestCase::test_simple_function src/test_com2ann.py::LineReportingTestCase::test_unsupported_assigns src/test_com2ann.py::LineReportingTestCase::test_unsupported_statements src/test_com2ann.py::ForAndWithTestCase::test_async_for src/test_com2ann.py::ForAndWithTestCase::test_async_with src/test_com2ann.py::ForAndWithTestCase::test_for src/test_com2ann.py::ForAndWithTestCase::test_with src/test_com2ann.py::FutureImportTestCase::test_added_future_import src/test_com2ann.py::FutureImportTestCase::test_not_added_future_import