[m-rev.] demangle_test

Zoltan Somogyi zoltan.somogyi at runbox.com
Mon Jan 8 11:22:59 AEDT 2018



On Mon, 8 Jan 2018 10:47:20 +1100, Peter Wang <novalazy at gmail.com> wrote:
> Since commit 244863872, it is not possible to install Mercury from the
> source distribution. make tries to use the as-yet installed compiler
> to compile demangle_test.
> 
> Can someone who remembers how the makefile works fix it?

Done. I just committed a workaround, which effectively undoes that commit.

I see several possibilities for compiling auxiliary programs to prevent bitrot
while avoiding this problem with the source distribution.

- Include the compiled form of those aux programs in the source distribution.
  The size increase is undesirable, but should also be minimal.

- Leave the aux programs out of their directory's standard build target,
  but include them in a nonstandard build target that is invoked by tools/
  bootcheck. This doesn't catch any bitrot immediately, but should catch it
  before commit.

- Leave the aux programs in their directory's standard build target, but have
  the top-level makefile invoke another build target that omits them if a file
  that is present only in source distributions is present.

Overall, I prefer the second option. Opinions?

> Or maybe we can remove the program - it seems trivial to me.

If we ever want to fix the (several) major flaws of the name mangling scheme,
we will need something like it.

Likewise, we will need something like the aux test programs in the browser
directory if we want to work on the declarative debugger again.

Zoltan.


More information about the reviews mailing list