Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fails to build with Clang 19 #28283

Closed
berolinux opened this issue Aug 18, 2024 · 0 comments · Fixed by #28446
Closed

Fails to build with Clang 19 #28283

berolinux opened this issue Aug 18, 2024 · 0 comments · Fixed by #28446
Labels

Comments

@berolinux
Copy link

Steps to reproduce

  1. Install a current build of clang 19.x
  2. Try to build tdesktop with it

Expected behaviour

It compiles

Actual behaviour

Build fails because of recent changes to the template syntax (CWG 96).
See
https://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#96
llvm/llvm-project#80801

Operating system

OpenMandriva Cooker

Version of Telegram Desktop

5.4.1

Installation source

Other (unofficial) source

Crash ID

No response

Logs

In file included from /home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.cpp:10:
In file included from /home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:13:
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/Telegram/SourceFiles/lang/lang_values.h:72:43: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
   72 |                 return ReplaceUnwrap<Tags...>::template Call(
      |                                                         ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/Telegram/SourceFiles/lang/lang_values.h:95:43: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
   95 |                 return ReplaceUnwrap<Tags...>::template Call(
      |                                                         ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/Telegram/SourceFiles/lang/lang_values.h:164:43: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  164 |                 return ReplaceUnwrap<Tags...>::template Call(
      |                                                         ^
In file included from /home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.cpp:10:
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:360:48: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  360 |                 return ::Lang::details::Producer<>::template Combine(base, std::move(p));
      |                                                              ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:365:48: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  365 |                 return ::Lang::details::Producer<>::template Current(base, std::move(p));
      |                                                              ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:375:72: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  375 |                 return ::Lang::details::Producer<lngtag_month, lngtag_day>::template Combine(base, std::move(p), month__val, day__val);
      |                                                                                      ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:380:72: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  380 |                 return ::Lang::details::Producer<lngtag_month, lngtag_day>::template Current(base, std::move(p), month__val, day__val);
      |                                                                                      ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:390:85: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  390 |                 return ::Lang::details::Producer<lngtag_month, lngtag_day, lngtag_year>::template Combine(base, std::move(p), month__val, day__val, year__val);
      |                                                                                                   ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:395:85: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  395 |                 return ::Lang::details::Producer<lngtag_month, lngtag_day, lngtag_year>::template Current(base, std::move(p), month__val, day__val, year__val);
      |                                                                                                   ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:405:73: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  405 |                 return ::Lang::details::Producer<lngtag_month, lngtag_year>::template Combine(base, std::move(p), month__val, year__val);
      |                                                                                       ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:410:73: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  410 |                 return ::Lang::details::Producer<lngtag_month, lngtag_year>::template Current(base, std::move(p), month__val, year__val);
      |                                                                                       ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:420:60: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  420 |                 return ::Lang::details::Producer<lngtag_count>::template Combine(base, std::move(p), type, count__val);
      |                                                                          ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:425:60: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  425 |                 return ::Lang::details::Producer<lngtag_count>::template Current(base, std::move(p), type, count__val);
      |                                                                          ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:435:59: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  435 |                 return ::Lang::details::Producer<lngtag_time>::template Combine(base, std::move(p), time__val);
      |                                                                         ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:440:59: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  440 |                 return ::Lang::details::Producer<lngtag_time>::template Current(base, std::move(p), time__val);
      |                                                                         ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:450:59: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  450 |                 return ::Lang::details::Producer<lngtag_date>::template Combine(base, std::move(p), date__val);
      |                                                                         ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:455:59: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  455 |                 return ::Lang::details::Producer<lngtag_date>::template Current(base, std::move(p), date__val);
      |                                                                         ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:465:72: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  465 |                 return ::Lang::details::Producer<lngtag_date, lngtag_time>::template Combine(base, std::move(p), date__val, time__val);
      |                                                                                      ^
/home/bero/failed-builds/telegram-desktop/BUILD/telegram-desktop-5.4.1-build/tdesktop-5.4.1-full/build/Telegram/gen/lang_auto.h:470:72: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
  470 |                 return ::Lang::details::Producer<lngtag_date, lngtag_time>::template Current(base, std::move(p), date__val, time__val);
      |                                                                                      ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
@berolinux berolinux added the bug label Aug 18, 2024
VladislavGrudinin added a commit to VladislavGrudinin/tdesktop that referenced this issue Sep 23, 2024

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
VladislavGrudinin added a commit to VladislavGrudinin/tdesktop that referenced this issue Sep 23, 2024
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 13, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant