Adan Canto, known for his versatility in roles in ‘X-Men’ and ‘Designated Survivor,’ dies at 42

By Associated Press
Published: January 10, 2024 01:57 PM

LOS ANGELES, Jan 10: Adan Canto, the Mexican singer and actor best known for his roles in “X-Men: Days of Future Past” and “Agent Game” as well as the TV series “The Cleaning Lady,” has died. He was 42.

Publicist Jennifer Allen, told The Associated Press Canto died of appendiceal cancer and had opted to keep his diagnosis private.

“Adan had a depth of spirit that few truly knew. Those who glimpsed it were changed forever,” Allen wrote in a statement. “He will be greatly missed by so many.”

Born in Ciudad Acuña, Coahuila, Mexico and raised in Texas, Canto began his career at age 16, when he left home for Mexico City to work as a singer-songwriter. He then began pursuing acting, making his TV debut on the 2009 Mexican series “Estado de Gracia.” His American debut came later, on Kevin Williamson’s 2013 Fox drama series “The Following,” which starred Kevin Bacon.

His notable roles include Vice President-elect Aaron Shore on “Designated Survivor,” Colombian politician Rodrigo Lara Bonilla on “Narcos,” and the mutant Sunspot in “X-Men: Days of Future Past.” Canto starred in Halle Berry’s directorial debut, “Bruised,” as well as “Agent Game.”

He also directed his first short film in 2014 and a second one in 2020, a provocative western starring Theo Rossi.

Canto was starring as Armand Morales on Fox’s “The Cleaning Lady” at the time of his death, which is currently filming its third season. He was unable to participate in the production due to his illness but was hoping to rejoin later in the season.

Canto had a broad smile and a boisterous laugh. His friends said he also had a sensitivity and humility that could seem at odds with the big frame and square jaw of a leading man.

 

 

 

 

 

 

Request history8.2.19PHP Version9.62sRequest Duration6MBMemory UsageGET amp/news/{slug}Route
    • Booting (16.31ms)time
    • Application (9.6s)time
    • 1 x Application (99.83%)
      9.60s
      1 x Booting (0.17%)
      16.31ms
      1 templates were rendered
      • frontend.amp-detailamp-detail.blade.php#?blade
      uri
      GET amp/news/{slug}
      middleware
      web, mynews, kyc
      controller
      App\Http\Controllers\Frontend\News\NewsController@getBySlug
      namespace
      prefix
      where
      as
      news.slug
      file
      app/Http/Controllers/Frontend/News/NewsController.php:276-373
      10 statements were executed9.55s
      • NewsController.php#297republica12.95sselect `id`, `title`, `content`, `excerpt`, `permalink`, `pub_date`, `is_subscriber_only`, `is_subscriber_user`, `is_free`, `is_logged_in_user`, `content`, `caption`, `news_slug`, `exclusive_news` from `news` where `permalink` = 'adan-canto-known-for-his-versatility-in-roles-in-x-men-and-designated-survivor-dies-at-42' and `status` = 1 limit 1
        Bindings
        • 0: adan-canto-known-for-his-versatility-in-roles-in-x-men-and-designated-survivor-dies-at-42
        • 1: 1
        Backtrace
        • app/Http/Controllers/Frontend/News/NewsController.php:297
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:426
        • app/Http/Controllers/Frontend/News/NewsController.php:291
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
      • NewsController.php#297republica1580μsselect `attachments`.`id`, `directory`, `file`, `news_has_attachments`.`news_id` as `pivot_news_id`, `news_has_attachments`.`attachment_id` as `pivot_attachment_id`, `news_has_attachments`.`created_at` as `pivot_created_at`, `news_has_attachments`.`updated_at` as `pivot_updated_at` from `attachments` inner join `news_has_attachments` on `attachments`.`id` = `news_has_attachments`.`attachment_id` where `news_has_attachments`.`is_featured_image` = '0' and `news_has_attachments`.`news_id` in (150338)
        Bindings
        • 0: 0
        Backtrace
        • app/Http/Controllers/Frontend/News/NewsController.php:297
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:426
        • app/Http/Controllers/Frontend/News/NewsController.php:291
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
      • NewsController.php#297republica1510μsselect `categories`.`id`, `name`, `news_has_categories`.`news_id` as `pivot_news_id`, `news_has_categories`.`category_id` as `pivot_category_id`, `news_has_categories`.`created_at` as `pivot_created_at`, `news_has_categories`.`updated_at` as `pivot_updated_at` from `categories` inner join `news_has_categories` on `categories`.`id` = `news_has_categories`.`category_id` where `news_has_categories`.`news_id` in (150338)
        Backtrace
        • app/Http/Controllers/Frontend/News/NewsController.php:297
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:426
        • app/Http/Controllers/Frontend/News/NewsController.php:291
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
      • NewsController.php#297republica1560μsselect `attachments`.`id`, `directory`, `file`, `news_has_attachments`.`news_id` as `pivot_news_id`, `news_has_attachments`.`attachment_id` as `pivot_attachment_id`, `news_has_attachments`.`created_at` as `pivot_created_at`, `news_has_attachments`.`updated_at` as `pivot_updated_at` from `attachments` inner join `news_has_attachments` on `attachments`.`id` = `news_has_attachments`.`attachment_id` where `news_has_attachments`.`is_featured_image` = '1' and `news_has_attachments`.`news_id` in (150338)
        Bindings
        • 0: 1
        Backtrace
        • app/Http/Controllers/Frontend/News/NewsController.php:297
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:426
        • app/Http/Controllers/Frontend/News/NewsController.php:291
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
      • NewsController.php#297republica1640μsselect `authors`.`id`, `name`, `avatar`, `news_has_authors`.`news_id` as `pivot_news_id`, `news_has_authors`.`author_id` as `pivot_author_id`, `news_has_authors`.`created_at` as `pivot_created_at`, `news_has_authors`.`updated_at` as `pivot_updated_at` from `authors` inner join `news_has_authors` on `authors`.`id` = `news_has_authors`.`author_id` where `news_has_authors`.`news_id` in (150338)
        Backtrace
        • app/Http/Controllers/Frontend/News/NewsController.php:297
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:426
        • app/Http/Controllers/Frontend/News/NewsController.php:291
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
      • NewsController.php#388republica13.29sselect `id`, `title`, `excerpt`, `permalink`, `pub_date`, `is_subscriber_only`, MATCH(title, excerpt) AGAINST ('Adan Canto known for his versatility in roles in XMen and Designated Survivor dies at 42' IN BOOLEAN MODE) as score from `news` where `id` != 150338 and `status` = 1 order by `score` desc, `pub_date` desc limit 6
        Bindings
        • 0: 150338
        • 1: 1
        Backtrace
        • app/Http/Controllers/Frontend/News/NewsController.php:388
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:426
        • app/Http/Controllers/Frontend/News/NewsController.php:380
        • app/Http/Controllers/Frontend/News/NewsController.php:306
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
      • NewsController.php#388republica1900μsselect `attachments`.`id`, `directory`, `file`, `news_has_attachments`.`news_id` as `pivot_news_id`, `news_has_attachments`.`attachment_id` as `pivot_attachment_id`, `news_has_attachments`.`created_at` as `pivot_created_at`, `news_has_attachments`.`updated_at` as `pivot_updated_at` from `attachments` inner join `news_has_attachments` on `attachments`.`id` = `news_has_attachments`.`attachment_id` where `news_has_attachments`.`is_featured_image` = '0' and `news_has_attachments`.`news_id` in (95997, 113683, 115407, 120016, 124428, 148241)
        Bindings
        • 0: 0
        Backtrace
        • app/Http/Controllers/Frontend/News/NewsController.php:388
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:426
        • app/Http/Controllers/Frontend/News/NewsController.php:380
        • app/Http/Controllers/Frontend/News/NewsController.php:306
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
      • NewsController.php#388republica1630μsselect `attachments`.`id`, `directory`, `file`, `news_has_attachments`.`news_id` as `pivot_news_id`, `news_has_attachments`.`attachment_id` as `pivot_attachment_id`, `news_has_attachments`.`created_at` as `pivot_created_at`, `news_has_attachments`.`updated_at` as `pivot_updated_at` from `attachments` inner join `news_has_attachments` on `attachments`.`id` = `news_has_attachments`.`attachment_id` where `news_has_attachments`.`is_featured_image` = '1' and `news_has_attachments`.`news_id` in (95997, 113683, 115407, 120016, 124428, 148241)
        Bindings
        • 0: 1
        Backtrace
        • app/Http/Controllers/Frontend/News/NewsController.php:388
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:426
        • app/Http/Controllers/Frontend/News/NewsController.php:380
        • app/Http/Controllers/Frontend/News/NewsController.php:306
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
      • NewsController.php#416republica1474msselect `id`, `title`, `excerpt`, `permalink`, `pub_date`, `is_subscriber_only`, `read_time`, `news_slug` from `news` where `pub_date` between '2025-04-11 21:19:10' and '2025-04-12 21:19:10' and `id` not in (150338) and `status` = 1 order by `view_count` desc limit 3
        Bindings
        • 0: 2025-04-11 21:19:10
        • 1: 2025-04-12 21:19:10
        • 2: 150338
        • 3: 1
        Backtrace
        • app/Http/Controllers/Frontend/News/NewsController.php:416
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:426
        • app/Http/Controllers/Frontend/News/NewsController.php:410
        • app/Http/Controllers/Frontend/News/NewsController.php:315
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
      • UpdateNewsVisitListener.php#27republica12.83supdate `news` set `view_count` = `view_count` + 1, `news`.`updated_at` = '2025-04-12 21:19:11' where `id` = 150338 and `status` = 1
        Bindings
        • 0: 2025-04-12 21:19:11
        • 1: 150338
        • 2: 1
        Backtrace
        • app/Listeners/UpdateNewsVisitListener.php:27
        • vendor/laravel/framework/src/Illuminate/Foundation/helpers.php:473
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • vendor/laravel/framework/src/Illuminate/Routing/Route.php:264
      App\Models\News
      7News.php#?
      App\Models\Attachment
      7Attachment.php#?
      App\Models\Category
      1Category.php#?
      App\Models\Author
      1Author.php#?
          _token
          PTUufhA3sG34mj6RYmoLbx62z2mC0HStRS6JYwV2
          subscriber_only_page
          https://newtest.myrepublica.com/amp/news/adan-canto-known-for-his-versatility-in-roles-in-x-men-and-...
          _previous
          array:1 [ "url" => "https://newtest.myrepublica.com/amp/news/adan-canto-known-for-his-versatility-...
          _flash
          array:2 [ "old" => [] "new" => [] ]
          path_info
          /amp/news/adan-canto-known-for-his-versatility-in-roles-in-x-men-and-designated-survivor-dies-at-42
          status_code
          200
          
          status_text
          OK
          format
          html
          content_type
          text/html; charset=UTF-8
          request_query
          []
          
          request_request
          []
          
          request_headers
          0 of 0
          array:24 [ "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "connection" => array:1 [ 0 => "Keep-Alive" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "18.188.115.61" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "priority" => array:1 [ 0 => "u=0, i" ] "cookie" => array:1 [ 0 => "XSRF-TOKEN=eyJpdiI6IklNb2NJZFFxMGl6RTlBNkVXdWJBY2c9PSIsInZhbHVlIjoiRllKMGsxaXFhTTUvbDBvVVRnd0U3Mnp1Y0ZmV2ZQcWZ4aTZvVm1zQ1pqVWhMQnIrc2lYUlQrUVUzTG5MNmFpV20rUmw3UGZDVmRiRUVDMTdVbEd3SFhIOUt5YU5TUEhwaXFGZmUzMWx3bmdyTVptY1Vkd2lNY3A3QzlBY3R1TFIiLCJtYWMiOiIwM2YwZjMxNmU4OGYzNTU4ZTZlNTU2ZjhmYzRlZWE0ODViZDIxNjVmYTc0ZGVkNjM5OGY0NWMzZWM3NGRkYjJiIiwidGFnIjoiIn0%3D; republica_session=eyJpdiI6Ik5uU1EzODJYSXQzbTBOMGpTVGh3dUE9PSIsInZhbHVlIjoiM3daa1luaFVOdHp5d01OY3h3Z21vMGJjTy80Qm5qQ2Zrc3k2aEUrNTR5SGxtc1VCazRWQ1l4bWVBcU1JWGttUHRTL1NreXRGaHhGOWNYTitvMUJGL3R4bVY1VWtrTGU1MnRjSmFEU0J6TkRpV2FPWkx5Ly9TYWg5c1V2NVlzKzkiLCJtYWMiOiI0NzMyMTZhZjcxYzMxZjFhYzViOWE3NDBhMjJmNDQwOGViOTVlNjc5OTY0NmRmOGFjNjFkNzc3YTM5NTUwZmZhIiwidGFnIjoiIn0%3DXSRF-TOKEN=eyJpdiI6IklNb2NJZFFxMGl6RTlBNkVXdWJBY2c9PSIsInZhbHVlIjoiRllKMGsxaXFhTTUvbDBvVVRnd0U3Mnp1Y0ZmV2ZQcWZ4aTZvVm1zQ1pqVWhMQnIrc2lYUlQrUVUzTG5MNmFpV20rUmw3U" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "host" => array:1 [ 0 => "newtest.myrepublica.com" ] "x-forwarded-for" => array:1 [ 0 => "18.188.115.61" ] "cf-ray" => array:1 [ 0 => "92f3c9205bef0001-ORD" ] ]
          request_cookies
          0 of 0
          array:2 [ "XSRF-TOKEN" => "PTUufhA3sG34mj6RYmoLbx62z2mC0HStRS6JYwV2" "republica_session" => "1qMXzyF8exkk6b2y13LZkzjKOVptVK0K3JOy0kiq" ]
          response_headers
          0 of 0
          array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Sat, 12 Apr 2025 15:34:13 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IklqSVZLZW9BeGpMQWdoVE5kQm5SeVE9PSIsInZhbHVlIjoiL0FmU3pQdmgxQTVHeUZpUmY2eDYrQmk0K1BieTB1VG1jNE9pSFFncExkQ3VsY3hhckNWVk0vM003L2FVL2JyOE5UQ0x2aWdib2hJRE1LM0NFVVdzZHA4Rmwzd0Q2ZnNhMmFtQ3Zma0c0cWRPVCtRcTJNZlVPWUJJNXh3SExhMTQiLCJtYWMiOiJjZTIyNjNmNjcyNGRlMWZlOTEyOWQ1M2QxZTEyNzgyMzgzZWM5MGY0ZjVhOTY0YWI3ZTk2MDNlY2E2ZDFlY2ZmIiwidGFnIjoiIn0%3D; expires=Sun, 12 Apr 2026 15:34:13 GMT; Max-Age=31536000; path=/; secure; samesite=laxXSRF-TOKEN=eyJpdiI6IklqSVZLZW9BeGpMQWdoVE5kQm5SeVE9PSIsInZhbHVlIjoiL0FmU3pQdmgxQTVHeUZpUmY2eDYrQmk0K1BieTB1VG1jNE9pSFFncExkQ3VsY3hhckNWVk0vM003L2FVL2JyOE5UQ0x2a" 1 => "republica_session=eyJpdiI6InBtVkQzbURWK2dWV05XaUd6RkMwTVE9PSIsInZhbHVlIjoiWlVORzFGTnl0SUNCNmozZWdsaDN4M1pZa09UNmNiVkdWS09ka21QU00rbEdkMzNDb0RWb0w2NVVoSFloS2hxL3RlSUsyMTRDUnlxUVNXZkVzQlJ5UWZ0OTlyWEs1Q2VlNzMzc3BwVWNMM29PZGRPQ3lYYk9QTk56dWZFdkxKM28iLCJtYWMiOiJkM2U1OWIzNTQ1OTQ3ODMyMjIxMWJhYjc4YzhkNzdlMjIyYjQ1MDNiZTgxNmFlZGNhY2M0OGFlOTE1MTEyNGE2IiwidGFnIjoiIn0%3D; expires=Sun, 12 Apr 2026 15:34:13 GMT; Max-Age=31536000; path=/; secure; httponly; samesite=laxrepublica_session=eyJpdiI6InBtVkQzbURWK2dWV05XaUd6RkMwTVE9PSIsInZhbHVlIjoiWlVORzFGTnl0SUNCNmozZWdsaDN4M1pZa09UNmNiVkdWS09ka21QU00rbEdkMzNDb0RWb0w2NVVoSFloS2hxL3" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IklqSVZLZW9BeGpMQWdoVE5kQm5SeVE9PSIsInZhbHVlIjoiL0FmU3pQdmgxQTVHeUZpUmY2eDYrQmk0K1BieTB1VG1jNE9pSFFncExkQ3VsY3hhckNWVk0vM003L2FVL2JyOE5UQ0x2aWdib2hJRE1LM0NFVVdzZHA4Rmwzd0Q2ZnNhMmFtQ3Zma0c0cWRPVCtRcTJNZlVPWUJJNXh3SExhMTQiLCJtYWMiOiJjZTIyNjNmNjcyNGRlMWZlOTEyOWQ1M2QxZTEyNzgyMzgzZWM5MGY0ZjVhOTY0YWI3ZTk2MDNlY2E2ZDFlY2ZmIiwidGFnIjoiIn0%3D; expires=Sun, 12-Apr-2026 15:34:13 GMT; path=/; secureXSRF-TOKEN=eyJpdiI6IklqSVZLZW9BeGpMQWdoVE5kQm5SeVE9PSIsInZhbHVlIjoiL0FmU3pQdmgxQTVHeUZpUmY2eDYrQmk0K1BieTB1VG1jNE9pSFFncExkQ3VsY3hhckNWVk0vM003L2FVL2JyOE5UQ0x2a" 1 => "republica_session=eyJpdiI6InBtVkQzbURWK2dWV05XaUd6RkMwTVE9PSIsInZhbHVlIjoiWlVORzFGTnl0SUNCNmozZWdsaDN4M1pZa09UNmNiVkdWS09ka21QU00rbEdkMzNDb0RWb0w2NVVoSFloS2hxL3RlSUsyMTRDUnlxUVNXZkVzQlJ5UWZ0OTlyWEs1Q2VlNzMzc3BwVWNMM29PZGRPQ3lYYk9QTk56dWZFdkxKM28iLCJtYWMiOiJkM2U1OWIzNTQ1OTQ3ODMyMjIxMWJhYjc4YzhkNzdlMjIyYjQ1MDNiZTgxNmFlZGNhY2M0OGFlOTE1MTEyNGE2IiwidGFnIjoiIn0%3D; expires=Sun, 12-Apr-2026 15:34:13 GMT; path=/; secure; httponlyrepublica_session=eyJpdiI6InBtVkQzbURWK2dWV05XaUd6RkMwTVE9PSIsInZhbHVlIjoiWlVORzFGTnl0SUNCNmozZWdsaDN4M1pZa09UNmNiVkdWS09ka21QU00rbEdkMzNDb0RWb0w2NVVoSFloS2hxL3" ] ]
          session_attributes
          0 of 0
          array:4 [ "_token" => "PTUufhA3sG34mj6RYmoLbx62z2mC0HStRS6JYwV2" "subscriber_only_page" => "https://newtest.myrepublica.com/amp/news/adan-canto-known-for-his-versatility-in-roles-in-x-men-and-designated-survivor-dies-at-42" "_previous" => array:1 [ "url" => "https://newtest.myrepublica.com/amp/news/adan-canto-known-for-his-versatility-in-roles-in-x-men-and-designated-survivor-dies-at-42" ] "_flash" => array:2 [ "old" => [] "new" => [] ] ]
          ClearShow all
          Date ↕MethodURLData
          #12025-04-12 21:19:13GET/amp/news/adan-canto-known-for-his-versatility-in-roles-in-x-men-and-designated-survivor-dies-at-4211016