Property given twice in the same declaration: "P_etc"

Hey, it’s been a minute. Sorry to be a fair (or foul) weather friend.

I stepped away from my source for about a year, and when I went to compile, I got a " Translating the Source - Failed"

Looking at the console, I see:

++ Ended: Translation succeeded: 44 rooms, 304 things
Inform 7 has finished.
/Applications/Inform.app/Contents/MacOS/inform6 \
	-kE2SDwG +include_path=/Applications/Inform.app/Contents/Resources/Library/6.11,.,../Source /Users/wmodes/dev/bearcreek/bearcreek_v2/bearcreek.inform/Build/auto.inf /Users/wmodes/dev/bearcreek/bearcreek_v2/bearcreek.inform/Build/output.ulx 
Launching: /Applications/Inform.app/Contents/MacOS/inform6 "-kE2SDwG" "+include_path=/Applications/Inform.app/Contents/Resources/Library/6.11,.,../Source" "/Users/wmodes/dev/bearcreek/bearcreek_v2/bearcreek.inform/Build/auto.inf" "/Users/wmodes/dev/bearcreek/bearcreek_v2/bearcreek.inform/Build/output.ulx"
Inform 6.41 for MacOS (22nd July 2022)
File "/Users/wmodes/dev/bearcreek/bearcreek_v2/bearcreek.inform/Build/auto.inf"; Line 19994	# Error:  Property given twice in the same declaration: "P_etc"
>     with P_etc

Looking at the intermediate source, I see yeah, there are two P_etc identifiers apparently defined for the player character:

K8_person -> selfobj    with short_name bc_U67
    with description ts_array_U1
    with P_persistence_count 0
    with P_pinetree_tries_count 0
    with P_treetop_tries_count 0
    with P_attempts_to_leave 0
    has proper
    has privately_named
    has concealed
    with P_person_condition I__neutrois_U1
    with P_awake 1
    with P_yourself_condition I_unaware_of_arm_injury_U1
    with vector 0
    with cap_short_name bc_U68
    has mark_as_thing
    with component_child I_players_hands_U1
    has animate
    with before NULL
    with saved_short_name bc_U69
    with KD_Count 8
    with IK2_Count 0
    with K2_thing_Next I_pail_U1
    with IK8_Count 0
    with K8_person_Next I_dog_U1
    with action_bitmap 0 0 0 0 0 0 0 0 0 0
    with parse_name parse_name13
    with P_etc 0
    with P_aware_of_compass_direction 0
    with P_intrepid 0
    with P_perceptive 0
    with P_resourceful 0
    with P_affectionate 0
    with P_tenacious 0
    with P_compassionate 0
    with P_courageous 0
    with P_protective 0
    with P_injured 0
    with P_sappy 0
    with P_dirty 0
    with P_clothing_ripped 0
    with P_covered_in_leaves 0
    with P_hungry 0
    with P_dog_warned 0
    with P_train_experienced 0
    with P_dog_experienced 0
    with P_swim_experienced 0
    with P_tree_experienced 0
    with P_treetop_experienced 0
    with P_mika_experienced 0
    with P_lee_experienced 0
    with P_sharon_experienced 0
    with P_found_by_lee 0
    with P_found_by_sharon 0
    with P_etc 0
    with P_photo_experienced 0
    with P_special_experienced 0
    with P_warned_by_grandma 0
    with P_free_to_wander 0
    with P_lee_support I__unfaced_U1
    with P_going_home_decision I__unfaced_U1
    with initial bc_U70
    with plural bc_U71
    with article bc_U72
    with list_together bc_U73
    with P_scent bc_U74

I’m pretty sure that every single one of those – with etc, as the exception – is defined in my source. There is no occurrence of “etc” as a property in my source. Though perhaps in a plug-in.

What do you suggest as next steps for me to track down this error and fix it?

You’ve got one or more names (probably of variables or properties) that’re too long. I’m not sure what the definition of not too long is. There’s an open bug about this, I7-2199.

1 Like

Does the reporting of the location in the intermediate source suggest it is an identifier that is a property of the player character?

The faulty I6 definition is for the player character (selfobj) so I assume that these are two long-named properties specifically declared in I7 for the player, not inherited from a kind.

1 Like