ToME: the Tales of Maj'Eyal
http://forums.te4.org/

ToME 2 maintenance
http://forums.te4.org/viewtopic.php?f=1&t=21344
Page 22 of 22

Author:  Castler [ Sun Feb 28, 2016 2:14 am ]
Post subject:  Re: ToME 2 maintenance

Lord Estraven wrote:
So just a heads up, Clang and GCC support for C++14 are both really iffy on Ubuntu 14.04 LTS, and probably also on Debian Stable. I'm guessing there are a lot of people using LTS as their main desktop; seeing as Canonical loves to break things all the time in non-LTS versions...

Anyway, from what I've read on the subject, there are subtle incompatibilities between C++11 and C++14. As such I'm not sure it's a good idea to move fully to C++14 right now. Personally, I would probably want to hold off until the next LTS version of Ubuntu.

That said, I'm not the C++ programmer here. YMMV.

Edit: on a side note, I've been reading Effective Modern C++, and it's almost enough to put me off C++ completely! It seems as though C++11/14 features introduce many, many new possibilities for undefined behavior at runtime, which can be difficult to detect while writing and compiling code.

What incompatibilities are you running into between C++11 and C++14? I know that GCC's C++11 introduced a new ABI that's not backwards compatible, but I'd though that C++14 was relatively minor. The ABI issues can be handled by adding "-D_GLIBCXX_USE_CXX11_ABI=0" to your compiler command on distros like 14.04 that still use the old ABI; see here.

For our C++11 work on Ubuntu 14.04 LTS, we enabled the toolchain test builds and used latest compilers and libraries from there, for full C++11/C++14 support. However, this is all on systems we control; it's probably kind of radical for a game you're distributing to others. For Clang, I think you could probably install the latest version from llvm.org's repositories for full C++14 support then distribute the binaries to people without taking further special action, but I haven't tried this.

Similarly, I'd thought that a lot of the changes in C++11 and C++14 and "modern" C++ were supposed to reduce undefined behavior. (Smart pointers are less error-prone than manual memory management, class initializers make uninitialized member variables less likely, etc.) That's been my experience, at least. I haven't read Effective Modern C++ yet, so I could easily be missing stuff.

Author:  Lord Estraven [ Sun Feb 28, 2016 4:35 pm ]
Post subject:  Re: ToME 2 maintenance

@Castler thanks...

It's quite possible I'm misinterpreting what I've read of Effective Modern C++. As I said, I'm not a C++ programmer by profession.

Re undefined behavior - on further reading, I think I have that wrong. Not undefined behavior, so much as lots of gotcha conditions. Meyers describes what seem like a lot of cases, mostly involving the functional programming features; where not-very-obvious mistakes can lead to code that compiles, runs, and does something you don't want.

Granted, it's not like C is any different in that respect. But C has far, far fewer rules to remember.

Author:  Castler [ Tue Mar 01, 2016 2:16 am ]
Post subject:  Re: ToME 2 maintenance

If you do come across any specific questions regarding C++, I'd be glad to try and answer them. C++ is where I spend most of my day job.

Lord Estraven wrote:
Granted, it's not like C is any different in that respect. But C has far, far fewer rules to remember.

I can definitely agree with you there.

Author:  Lord Estraven [ Wed Mar 02, 2016 3:10 am ]
Post subject:  Re: ToME 2 maintenance

[Edit: moving this discussion to its own thread]

Author:  AnonymousHero [ Wed Mar 02, 2016 5:48 am ]
Post subject:  Re: ToME 2 maintenance

Lord Estraven wrote:
(snip bits about C++ best practice)


Could you please take it to a different thread? While it's an interesting question, it's cluttering up the thread quite a bit.

Author:  Lord Estraven [ Wed Mar 02, 2016 2:38 pm ]
Post subject:  Re: ToME 2 maintenance

Aye, taking it to a different thread.

Author:  darwin [ Wed Mar 08, 2017 2:38 am ]
Post subject:  Re: ToME 2 maintenance

If there's a new source archive, please post it.

Author:  AnonymousHero [ Wed Mar 08, 2017 6:11 am ]
Post subject:  Re: ToME 2 maintenance

darwin wrote:
If there's a new source archive, please post it.


Do you really mean "source"? You can always download source archives from the GitHub repository with the "Clone or Download" button. Just press that and press the "Download ZIP" link.

Author:  darwin [ Wed Mar 08, 2017 6:26 am ]
Post subject:  Re: ToME 2 maintenance

AnonymousHero wrote:
Do you really mean "source"? You can always download source archives from the GitHub repository with the "Clone or Download" button. Just press that and press the "Download ZIP" link.


No; I mean source code's location archive--the above URL (hadn't been posted in this thread after years.) Though, I'm still wondering if there will be a future standard numbered version or if I should just try the version from git.

Author:  AnonymousHero [ Wed Mar 08, 2017 6:30 am ]
Post subject:  Re: ToME 2 maintenance

darwin wrote:
AnonymousHero wrote:
Do you really mean "source"? You can always download source archives from the GitHub repository with the "Clone or Download" button. Just press that and press the "Download ZIP" link.


No; I mean source code's location archive--the above URL (hadn't been posted in this thread after years.) Though, I'm still wondering if there will be a future standard numbered version or if I should just try the version from git.


Ah, the repository URL? I'll add an edit to the first post just to make it clearer that it's moved. Thanks the heads-up!

I've been holding off on releasing a numbered version because there's still a couple a few big things in there, but not yet necessarily "stable". I'd like to avoid having to maintain a separate "release" branch -- my time for maintenance is already stretched thin enough as-is :(.

Author:  Lord Estraven [ Sun Oct 08, 2017 1:06 pm ]
Post subject:  Re: ToME 2 maintenance

Either a bug or a missing feature: actions by inscription seems not to work.

What's expected: adding an "inscribed with" entry to an automizer rule creates the entry
What happens instead: the entry is not created, as if I'd hit escape instead of return

I'm mostly free today so I'll try to create a patch and push request.

Page 22 of 22 All times are UTC
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/