Tads 3.1.2 Hates My Laptop

So, I had Tads3 on my laptop and the desktop, and life was good. After a year of life being good, I decided to upgrade to the newest version. I downloaded 3.1.2 on the desktop, put the setup on a flash-drive, and so copied it over to my laptop. Uninstall the old, install the new, start new project…

Without me even typing a single line of code, this is the blather that appeared in the debug screen as soon as I started up the Advanced mode:

[rant][code]
Tip: you can go to the source location of a compile error
by double-clicking on the error message in this window

----- begin build: Wed Sep 19 23:33:51 2012 -----

t3make -Fy “C:\Users\Mary\My Games\My Tads Games\ExtraExtra\obj” -Fo “C:\Users\Mary\My Games\My Tads Games\ExtraExtra\obj” -o “debug\super.t3” -D “LANGUAGE=en_us” -D “MESSAGESTYLE=neu” -v -d -statprefix <@> -statpct “system.tl” “adv3\adv3.tl” “super.t” -res “GameInfo.txt”
TADS Compiler 3.1.2 Copyright 1999, 2012 Michael J. Roberts
c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\include\tadsgen.h(326): warning:
Macro “ReplaceOnce” has been previously defined; this new definition replaces
the previous definition.

c:\program files (x86)\tads 3\lib_main.t(195): error:
The symbol “makeList” is not defined. Check the spelling of the symbol name,
and make sure that the corresponding local variable, object, or function
definition is entered correctly. This error could be the result of a syntax
error in the original declaration of the symbol; if the declaration has an
error, correct that error first, then try recompiling.

Errors: 1
Warnings: 44

t3make: error code 1

Build failed.
[/code][/rant]

My first thought was “I’ll bet that stupid malware-blocker that kept randomly popping up and haphazardly blocking arbitrary web-pages had something to do with this. It probably corrupted the download.” So, I redownloaded it. Desktop, flashdrive, laptop…

Same error.

So I checked the copy on the desktop. It works fine. FINE! Absolutely no problems: It compiles and runs like it should. Laptop, though: Bizarre Errors. So I thought “Maybe the key is downloading it straight off the net; maybe there’s a file I’m not getting when I copy it.” Nope. Same error.

I am close to banging my head against the wall. Will someone please tell me what is going on? For the record, the laptop uses Windows 7. I don’t remember what the desktop uses, but the interface looks pretty much the same. It just…I…DAAAAAAH!

Since no one else has replied to this query, I downloaded 3.1.2 to my Windows 7 machine and installed it, just to see what would happen. It appears to work just fine – I’m not seeing the error that you’ve reported.

The one thing that I always do is, I don’t install to Program Files (x86). I install to a TADS 3 directory on my hard drive root (C:/). I don’t know if that would make a difference, but I do know of at least one program that is fussy about being in Program Files (x86), so it’s worth a try.

ReplaceOnce is defined in both systype.h and tadsgen.h, but that shouldn’t cause any problems.

makeList is mentioned in two places – _main.t and tadsgen.h. It’s defined in tadsgen.h, in fact. So what we have here looks like two opposite problems with the same file (tadsgen.h). The warnings suggest that the compiler is attempting to compile it over and over, while the error suggests that the compiler never uses it at all. Both are part of an object that goes by the name intrinsic ‘tads-gen/030008’. I have no idea what that is.

It’s hard to see how the installer could hiccup and corrupt this one file, especially when you’ve downloaded the installer multiple times. My best guess is that your system has an odd file structure that the installer doesn’t understand. But just for kicks, I’m attaching tadsgen.h to this message. It should be byte-for-byte identical to what you have. If it’s not, try replacing what you have with this one.
tadsgen.h (38.5 KB)

Well, I tried it, and bizarrely enough, that seems to have done it. :open_mouth:

Thanks, Jim! :smiley:

Maybe you had stale files in Program Files. (And maybe they’re still there.)