From 849f9d283281323e37037d8679e338fef024a955 Mon Sep 17 00:00:00 2001 From: Graham Nelson Date: Sun, 10 Feb 2019 23:10:04 +0000 Subject: [PATCH] Fixed some 64-bit bugs --- build-code.mk | 2 +- inblorb/Contents.w | 5 +++-- inblorb/versions.txt | 2 +- indoc/Contents.w | 7 ++++--- indoc/versions.txt | 2 +- inform6/inform6.mk | 2 +- inform7/Contents.w | 5 +++-- inform7/core-module/Chapter 6/New Verbs.w | 2 +- inform7/inflections-test/Contents.w | 5 +++-- inform7/inflections-test/versions.txt | 2 +- inform7/kinds-test/Contents.w | 5 +++-- inform7/kinds-test/versions.txt | 2 +- inform7/linguistics-module/Chapter 4/Verb Usages.w | 4 ++-- inform7/linguistics-test/Contents.w | 5 +++-- inform7/linguistics-test/versions.txt | 2 +- inform7/problems-test/Contents.w | 5 +++-- inform7/problems-test/versions.txt | 2 +- inform7/syntax-module/Chapter 2/Parse Tree.w | 2 +- inform7/syntax-test/Contents.w | 5 +++-- inform7/syntax-test/versions.txt | 2 +- inform7/versions.txt | 2 +- inform7/words-module/Chapter 3/Lexer.w | 2 +- inform7/words-test/Contents.w | 5 +++-- inform7/words-test/versions.txt | 2 +- inrtps/Contents.w | 5 +++-- inrtps/versions.txt | 2 +- inter/Contents.w | 5 +++-- inter/versions.txt | 2 +- makescript.txt | 1 + 29 files changed, 53 insertions(+), 41 deletions(-) diff --git a/build-code.mk b/build-code.mk index 4c90a0781..d7a0dabd4 100644 --- a/build-code.mk +++ b/build-code.mk @@ -1 +1 @@ -BUILDCODE = 6Q15 +BUILDCODE = 6Q16 diff --git a/inblorb/Contents.w b/inblorb/Contents.w index c19fcc95a..1c1b2d9bf 100644 --- a/inblorb/Contents.w +++ b/inblorb/Contents.w @@ -6,8 +6,8 @@ Declare Section Usage: Off Licence: This is a free, open-source program published under the Artistic License 2.0. Version Number: 4 Version Name: Duralumin -Build Number: 6Q15 -Build Date: 8 February 2019 +Build Number: 6Q16 +Build Date: 10 February 2019 Web Syntax Version: 2 Import: foundation @@ -37,3 +37,4 @@ Chapter 3: Other Material Templates Website Maker Base64 + diff --git a/inblorb/versions.txt b/inblorb/versions.txt index ac504979a..8417c8ec7 100644 --- a/inblorb/versions.txt +++ b/inblorb/versions.txt @@ -2,4 +2,4 @@ Sync to inform7 Amalgam 1 3K27 April 2006 Public launch Brass 2 5Z71 April 2009 Faster and tidied up (renamed "cBlorb") Chromoly 3 6E36 April 2010 Extended to release interpreters -Duralumin 4 *6Q15 8 February 2019 Unicode support (renamed "inblorb") +Duralumin 4 *6Q16 10 February 2019 Unicode support (renamed "inblorb") diff --git a/indoc/Contents.w b/indoc/Contents.w index c5b9d5fee..0ed47e79f 100644 --- a/indoc/Contents.w +++ b/indoc/Contents.w @@ -1,14 +1,14 @@ Title: indoc Author: Graham Nelson -Purpose: A Swiss army knife to produce documentation +Purpose: The documentation-formatter for the Inform 7 system. Language: InC Declare Section Usage: Off Web Syntax Version: 2 Licence: Artistic License 2.0 Version Number: 4 Version Name: Didache -Build Number: 6Q15 -Build Date: 8 February 2019 +Build Number: 6Q16 +Build Date: 10 February 2019 Import: foundation @@ -161,5 +161,6 @@ Chapter 4: Book Designs + diff --git a/indoc/versions.txt b/indoc/versions.txt index c532df88f..86d90d85c 100644 --- a/indoc/versions.txt +++ b/indoc/versions.txt @@ -2,4 +2,4 @@ Sync to inform7 Aquinas 1 3K27 April 2006 First Perl version Bonaventure 2 5Z71 April 2009 Tidied up somewhat Cranmer 3 6L02 May 2014 EPUB ebook generation support -Didache 4 *6Q15 8 February 2019 Ported to C with Unicode support +Didache 4 *6Q16 10 February 2019 Ported to C with Unicode support diff --git a/inform6/inform6.mk b/inform6/inform6.mk index e3a6bf421..b977812ca 100644 --- a/inform6/inform6.mk +++ b/inform6/inform6.mk @@ -7,7 +7,7 @@ INWEB = inweb/Tangled/inweb CC = clang -std=c99 -c $(MANYWARNINGS) $(CCOPTS) -g INDULGENTCC = clang -std=c99 -c $(FEWERWARNINGS) $(CCOPTS) -g -CCOPTS = -DPLATFORM_MACOS=1 -mmacosx-version-min=10.4 -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk +CCOPTS = -DPLATFORM_MACOS=1 -mmacosx-version-min=10.6 -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk MANYWARNINGS = -Weverything -Wno-pointer-arith -Wno-unused-macros -Wno-shadow -Wno-cast-align -Wno-variadic-macros -Wno-missing-noreturn -Wno-missing-prototypes -Wno-unused-parameter -Wno-padded -Wno-missing-variable-declarations -Wno-unreachable-code-break -Wno-class-varargs -Wno-format-nonliteral -Wno-cast-qual -Wno-double-promotion -Wno-comma -Wno-strict-prototypes -ferror-limit=1000 diff --git a/inform7/Contents.w b/inform7/Contents.w index c2869c9a6..76b8f075b 100644 --- a/inform7/Contents.w +++ b/inform7/Contents.w @@ -1,7 +1,7 @@ Title: inform7 Author: Graham Nelson -Build Date: 8 February 2019 -Build Number: 6Q15 +Build Date: 10 February 2019 +Build Number: 6Q16 Version Name: Krypton Version Number: 7.10.1 Purpose: The core compiler in a natural-language design system for interactive fiction. @@ -290,5 +290,6 @@ followed during compilation." + diff --git a/inform7/core-module/Chapter 6/New Verbs.w b/inform7/core-module/Chapter 6/New Verbs.w index e82ee8de0..4970ced4c 100644 --- a/inform7/core-module/Chapter 6/New Verbs.w +++ b/inform7/core-module/Chapter 6/New Verbs.w @@ -703,7 +703,7 @@ void NewVerbs::ConjugateVerb_invoke_emit(verb_conjugation *vc, = int NewVerbs::verb_form_is_instance(verb_form *vf) { verb_conjugation *vc = vf->underlying_verb->conjugation; - if ((vc->auxiliary_only == FALSE) && (vc->instance_of_verb) && + if ((vc) && (vc->auxiliary_only == FALSE) && (vc->instance_of_verb) && ((vf->preposition == NULL) || (vf->underlying_verb != copular_verb))) return TRUE; return FALSE; diff --git a/inform7/inflections-test/Contents.w b/inform7/inflections-test/Contents.w index 686efd29a..559b5f26d 100644 --- a/inform7/inflections-test/Contents.w +++ b/inform7/inflections-test/Contents.w @@ -7,8 +7,8 @@ Web Syntax Version: 2 Licence: Artistic License 2.0 Version Number: 1 Version Name: Abacus -Build Number: 6Q15 -Build Date: 8 February 2019 +Build Number: 6Q16 +Build Date: 10 February 2019 Import: foundation Import: words @@ -149,5 +149,6 @@ Chapter 1: Everything + diff --git a/inform7/inflections-test/versions.txt b/inform7/inflections-test/versions.txt index a4a9a58e0..752ea0dff 100644 --- a/inform7/inflections-test/versions.txt +++ b/inform7/inflections-test/versions.txt @@ -1,2 +1,2 @@ Sync to inform7 -Abacus 1 *6Q15 8 February 2019 +Abacus 1 *6Q16 10 February 2019 diff --git a/inform7/kinds-test/Contents.w b/inform7/kinds-test/Contents.w index 33de613a6..1d4cd3d9b 100644 --- a/inform7/kinds-test/Contents.w +++ b/inform7/kinds-test/Contents.w @@ -7,8 +7,8 @@ Web Syntax Version: 2 Licence: Artistic License 2.0 Version Number: 1 Version Name: Abacus -Build Number: 6Q15 -Build Date: 8 February 2019 +Build Number: 6Q16 +Build Date: 10 February 2019 Import: foundation Import: words @@ -139,5 +139,6 @@ Chapter 1: Everything + diff --git a/inform7/kinds-test/versions.txt b/inform7/kinds-test/versions.txt index a4a9a58e0..752ea0dff 100644 --- a/inform7/kinds-test/versions.txt +++ b/inform7/kinds-test/versions.txt @@ -1,2 +1,2 @@ Sync to inform7 -Abacus 1 *6Q15 8 February 2019 +Abacus 1 *6Q16 10 February 2019 diff --git a/inform7/linguistics-module/Chapter 4/Verb Usages.w b/inform7/linguistics-module/Chapter 4/Verb Usages.w index 98bd3d518..fb81a52c2 100644 --- a/inform7/linguistics-module/Chapter 4/Verb Usages.w +++ b/inform7/linguistics-module/Chapter 4/Verb Usages.w @@ -550,7 +550,7 @@ or "the verb to be able to see" use these. verb_form *vf; LOOP_OVER(vf, verb_form) { verb_conjugation *vc = vf->underlying_verb->conjugation; - if ((vc->auxiliary_only == FALSE) && (vc->instance_of_verb)) { + if ((vc) && (vc->auxiliary_only == FALSE) && (vc->instance_of_verb)) { if (WordAssemblages::compare_with_wording(&(vf->pos_reference_text), W)) { *XP = vf; *X = FALSE; return TRUE; } @@ -566,7 +566,7 @@ or "the verb to be able to see" use these. verb_form *vf; LOOP_OVER(vf, verb_form) { verb_conjugation *vc = vf->underlying_verb->conjugation; - if ((vc->auxiliary_only == FALSE) && (vc->instance_of_verb)) { + if ((vc) && (vc->auxiliary_only == FALSE) && (vc->instance_of_verb)) { if (WordAssemblages::compare_with_wording(&(vf->infinitive_reference_text), W)) { *XP = vf; *X = FALSE; return TRUE; } diff --git a/inform7/linguistics-test/Contents.w b/inform7/linguistics-test/Contents.w index 720775004..ff12b2253 100644 --- a/inform7/linguistics-test/Contents.w +++ b/inform7/linguistics-test/Contents.w @@ -7,8 +7,8 @@ Web Syntax Version: 2 Licence: Artistic License 2.0 Version Number: 1 Version Name: Abacus -Build Number: 6Q15 -Build Date: 8 February 2019 +Build Number: 6Q16 +Build Date: 10 February 2019 Import: foundation Import: words @@ -158,5 +158,6 @@ Chapter 1: Everything + diff --git a/inform7/linguistics-test/versions.txt b/inform7/linguistics-test/versions.txt index a4a9a58e0..752ea0dff 100644 --- a/inform7/linguistics-test/versions.txt +++ b/inform7/linguistics-test/versions.txt @@ -1,2 +1,2 @@ Sync to inform7 -Abacus 1 *6Q15 8 February 2019 +Abacus 1 *6Q16 10 February 2019 diff --git a/inform7/problems-test/Contents.w b/inform7/problems-test/Contents.w index 65a9cb6ec..f8043797e 100644 --- a/inform7/problems-test/Contents.w +++ b/inform7/problems-test/Contents.w @@ -7,8 +7,8 @@ Web Syntax Version: 2 Licence: Artistic License 2.0 Version Number: 1 Version Name: Abacus -Build Number: 6Q15 -Build Date: 8 February 2019 +Build Number: 6Q16 +Build Date: 10 February 2019 Import: foundation Import: words @@ -120,5 +120,6 @@ Chapter 1: Everything + diff --git a/inform7/problems-test/versions.txt b/inform7/problems-test/versions.txt index a4a9a58e0..752ea0dff 100644 --- a/inform7/problems-test/versions.txt +++ b/inform7/problems-test/versions.txt @@ -1,2 +1,2 @@ Sync to inform7 -Abacus 1 *6Q15 8 February 2019 +Abacus 1 *6Q16 10 February 2019 diff --git a/inform7/syntax-module/Chapter 2/Parse Tree.w b/inform7/syntax-module/Chapter 2/Parse Tree.w index d9ca4c478..8093e67c8 100644 --- a/inform7/syntax-module/Chapter 2/Parse Tree.w +++ b/inform7/syntax-module/Chapter 2/Parse Tree.w @@ -197,7 +197,7 @@ parse_tree_node_type parse_tree_node_types[NO_DEFINED_NT_VALUES]; void ParseTree::md(parse_tree_node_type ptnt) { if (ParseTree::valid_type(ptnt.identity) == FALSE) internal_error("set bad metadata"); - parse_tree_node_types[ptnt.identity] = ptnt; + parse_tree_node_types[ptnt.identity - BASE_OF_ENUMERATED_NTS] = ptnt; } @ = diff --git a/inform7/syntax-test/Contents.w b/inform7/syntax-test/Contents.w index 6f69ac1b6..811575119 100644 --- a/inform7/syntax-test/Contents.w +++ b/inform7/syntax-test/Contents.w @@ -7,8 +7,8 @@ Web Syntax Version: 2 Licence: Artistic License 2.0 Version Number: 1 Version Name: Abacus -Build Number: 6Q15 -Build Date: 8 February 2019 +Build Number: 6Q16 +Build Date: 10 February 2019 Import: foundation Import: words @@ -143,5 +143,6 @@ Chapter 1: Everything + diff --git a/inform7/syntax-test/versions.txt b/inform7/syntax-test/versions.txt index a4a9a58e0..752ea0dff 100644 --- a/inform7/syntax-test/versions.txt +++ b/inform7/syntax-test/versions.txt @@ -1,2 +1,2 @@ Sync to inform7 -Abacus 1 *6Q15 8 February 2019 +Abacus 1 *6Q16 10 February 2019 diff --git a/inform7/versions.txt b/inform7/versions.txt index ed5fe4bb6..6316f2a84 100644 --- a/inform7/versions.txt +++ b/inform7/versions.txt @@ -28,4 +28,4 @@ Hydrogen 7.8.1 6E59 June 2010 Parchment support, functional programming Iron 7.9.1 6L02 May 2014 Language reforms, unifying text 7.9.2 6L38 August 2014 Added Android platform 7.9.3 6M62 December 2015 Extension projects, unifying actions -Krypton 7.10.1 *6Q15 8 February 2019 * +Krypton 7.10.1 *6Q16 10 February 2019 * diff --git a/inform7/words-module/Chapter 3/Lexer.w b/inform7/words-module/Chapter 3/Lexer.w index 569dc6668..b1d99d46b 100644 --- a/inform7/words-module/Chapter 3/Lexer.w +++ b/inform7/words-module/Chapter 3/Lexer.w @@ -281,7 +281,7 @@ void Lexer::ensure_lexer_hwm_can_be_raised_by(int n, int transfer_partial_word) wchar_t *old_hwm = lexer_hwm; int m = 1; if (transfer_partial_word) { - m = ((old_hwm - lexer_word + n + 3)/TEXT_STORAGE_CHUNK_SIZE) + 1; + m = (((int) (old_hwm - lexer_word) + n + 3)/TEXT_STORAGE_CHUNK_SIZE) + 1; if (m < 1) m = 1; } Lexer::allocate_lexer_workspace_chunk(m); diff --git a/inform7/words-test/Contents.w b/inform7/words-test/Contents.w index 3d6951994..8d3954bcf 100644 --- a/inform7/words-test/Contents.w +++ b/inform7/words-test/Contents.w @@ -7,8 +7,8 @@ Web Syntax Version: 2 Licence: Artistic License 2.0 Version Number: 1 Version Name: Abacus -Build Number: 6Q15 -Build Date: 8 February 2019 +Build Number: 6Q16 +Build Date: 10 February 2019 Import: foundation Import: words @@ -135,5 +135,6 @@ Chapter 1: Everything + diff --git a/inform7/words-test/versions.txt b/inform7/words-test/versions.txt index a4a9a58e0..752ea0dff 100644 --- a/inform7/words-test/versions.txt +++ b/inform7/words-test/versions.txt @@ -1,2 +1,2 @@ Sync to inform7 -Abacus 1 *6Q15 8 February 2019 +Abacus 1 *6Q16 10 February 2019 diff --git a/inrtps/Contents.w b/inrtps/Contents.w index 59466ac3f..f12c3e240 100644 --- a/inrtps/Contents.w +++ b/inrtps/Contents.w @@ -6,8 +6,8 @@ Declare Section Usage: Off Licence: Artistic License 2.0 Version Number: 2 Version Name: Benefactive -Build Number: 6Q15 -Build Date: 8 February 2019 +Build Number: 6Q16 +Build Date: 10 February 2019 Web Syntax Version: 2 Import: foundation @@ -138,5 +138,6 @@ Chapter 1: The Whole Shooting Match + diff --git a/inrtps/versions.txt b/inrtps/versions.txt index d33362693..81c8249a5 100644 --- a/inrtps/versions.txt +++ b/inrtps/versions.txt @@ -1,3 +1,3 @@ Sync to inform7 Ablative 1 3K27 April 2006 First Perl version -Benefactive 2 *6Q15 8 February 2019 Ported to C with Unicode support +Benefactive 2 *6Q16 10 February 2019 Ported to C with Unicode support diff --git a/inter/Contents.w b/inter/Contents.w index 5b140bb41..d902e48ff 100644 --- a/inter/Contents.w +++ b/inter/Contents.w @@ -7,8 +7,8 @@ Web Syntax Version: 2 Licence: Artistic License 2.0 Version Number: 1 Version Name: Axion -Build Number: 6Q15 -Build Date: 8 February 2019 +Build Number: 6Q16 +Build Date: 10 February 2019 Import: foundation Import: inter @@ -165,5 +165,6 @@ Chapter 1: Everything + diff --git a/inter/versions.txt b/inter/versions.txt index 91d95ead1..eb645d9cc 100644 --- a/inter/versions.txt +++ b/inter/versions.txt @@ -1,2 +1,2 @@ Sync to inform7 -Axion 1 *6Q15 8 February 2019 +Axion 1 *6Q16 10 February 2019 diff --git a/makescript.txt b/makescript.txt index 8bef5ae76..3c23212c5 100644 --- a/makescript.txt +++ b/makescript.txt @@ -344,6 +344,7 @@ endef .PHONY: pages pages: $(INWEBX) inblorb -weave-docs -weave-into docs/inblorb + $(INWEBX) indoc -weave-docs -weave-into docs/indoc # ----------------------------------------------------------------------------- # Target "clean"