./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/race-3_2-container_of-global.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version a340643f Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/race-3_2-container_of-global.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-dev-a340643-m [2024-01-27 14:59:10,456 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-01-27 14:59:10,514 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-01-27 14:59:10,520 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-01-27 14:59:10,520 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-01-27 14:59:10,539 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-01-27 14:59:10,542 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-01-27 14:59:10,542 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-01-27 14:59:10,543 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-01-27 14:59:10,546 INFO L153 SettingsManager]: * Use memory slicer=true [2024-01-27 14:59:10,546 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-01-27 14:59:10,546 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-01-27 14:59:10,547 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-01-27 14:59:10,548 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-01-27 14:59:10,548 INFO L153 SettingsManager]: * Use SBE=true [2024-01-27 14:59:10,548 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-01-27 14:59:10,549 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-01-27 14:59:10,549 INFO L153 SettingsManager]: * sizeof long=4 [2024-01-27 14:59:10,549 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-01-27 14:59:10,549 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-01-27 14:59:10,550 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-01-27 14:59:10,551 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-01-27 14:59:10,551 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-01-27 14:59:10,551 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-01-27 14:59:10,551 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-01-27 14:59:10,551 INFO L153 SettingsManager]: * sizeof long double=12 [2024-01-27 14:59:10,552 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-01-27 14:59:10,552 INFO L153 SettingsManager]: * Use constant arrays=true [2024-01-27 14:59:10,552 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-01-27 14:59:10,553 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-01-27 14:59:10,553 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-01-27 14:59:10,554 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-01-27 14:59:10,554 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-01-27 14:59:10,554 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-01-27 14:59:10,554 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-01-27 14:59:10,554 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-01-27 14:59:10,555 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-01-27 14:59:10,555 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-01-27 14:59:10,555 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-01-27 14:59:10,555 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-01-27 14:59:10,555 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-01-27 14:59:10,556 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-01-27 14:59:10,556 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-01-27 14:59:10,556 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-01-27 14:59:10,770 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-01-27 14:59:10,785 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-01-27 14:59:10,787 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-01-27 14:59:10,788 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-01-27 14:59:10,789 INFO L274 PluginConnector]: Witness Parser initialized [2024-01-27 14:59:10,790 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/race-3_2-container_of-global.yml/witness.yml [2024-01-27 14:59:10,926 INFO L270 PluginConnector]: Initializing CDTParser... [2024-01-27 14:59:10,927 INFO L274 PluginConnector]: CDTParser initialized [2024-01-27 14:59:10,927 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i [2024-01-27 14:59:11,859 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-01-27 14:59:12,139 INFO L384 CDTParser]: Found 1 translation units. [2024-01-27 14:59:12,142 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i [2024-01-27 14:59:12,170 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f8145c6ce/0b282953c52e46c398a006a6819e391f/FLAG9a3eb5f91 [2024-01-27 14:59:12,191 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f8145c6ce/0b282953c52e46c398a006a6819e391f [2024-01-27 14:59:12,192 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-01-27 14:59:12,193 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-01-27 14:59:12,195 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-01-27 14:59:12,195 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-01-27 14:59:12,198 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-01-27 14:59:12,200 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 27.01 02:59:10" (1/2) ... [2024-01-27 14:59:12,201 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@939c107 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.01 02:59:12, skipping insertion in model container [2024-01-27 14:59:12,201 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 27.01 02:59:10" (1/2) ... [2024-01-27 14:59:12,203 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@50423e03 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.01 02:59:12, skipping insertion in model container [2024-01-27 14:59:12,203 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.01 02:59:12" (2/2) ... [2024-01-27 14:59:12,203 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@939c107 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.01 02:59:12, skipping insertion in model container [2024-01-27 14:59:12,203 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.01 02:59:12" (2/2) ... [2024-01-27 14:59:12,204 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-01-27 14:59:12,310 INFO L96 nessWitnessExtractor]: Found the following entries in the witness: [2024-01-27 14:59:12,312 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] (unsigned long )arg == 0UL [2024-01-27 14:59:12,312 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] (unsigned long )status == 0UL [2024-01-27 14:59:12,312 INFO L98 nessWitnessExtractor]: Location invariant before [L3926-L3926] data->shared.a == 0 [2024-01-27 14:59:12,312 INFO L98 nessWitnessExtractor]: Location invariant before [L3926-L3926] data->shared.b == 0 [2024-01-27 14:59:12,312 INFO L98 nessWitnessExtractor]: Location invariant before [L3926-L3926] my_dev == 0 [2024-01-27 14:59:12,313 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] (4294967294LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:12,313 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] (4294967295LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:12,313 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] (4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:12,313 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] my_dev == 0 [2024-01-27 14:59:12,313 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] (4294967295LL + (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:12,314 INFO L98 nessWitnessExtractor]: Location invariant before [L3963-L3963] ret == 0 [2024-01-27 14:59:12,314 INFO L98 nessWitnessExtractor]: Location invariant before [L3963-L3963] ((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:12,314 INFO L98 nessWitnessExtractor]: Location invariant after [L3936-L3937] my_dev == 0 [2024-01-27 14:59:12,314 INFO L98 nessWitnessExtractor]: Location invariant after [L3936-L3937] data->shared.a == 0 [2024-01-27 14:59:12,314 INFO L98 nessWitnessExtractor]: Location invariant after [L3936-L3937] data->shared.b == 0 [2024-01-27 14:59:12,314 INFO L98 nessWitnessExtractor]: Location invariant after [L3936-L3937] res != 0 [2024-01-27 14:59:12,314 INFO L98 nessWitnessExtractor]: Location invariant before [L3922-L3922] my_dev == 0 [2024-01-27 14:59:12,315 INFO L98 nessWitnessExtractor]: Location invariant before [L3910-L3910] (unsigned long )arg == 0UL [2024-01-27 14:59:12,315 INFO L98 nessWitnessExtractor]: Location invariant before [L3887-L3887] expression == 1 [2024-01-27 14:59:12,315 INFO L98 nessWitnessExtractor]: Location invariant before [L3887-L3887] expression == 0 [2024-01-27 14:59:12,315 INFO L98 nessWitnessExtractor]: Location invariant before [L3887-L3887] (expression == 1 && my_dev == 0) || ((0 <= expression && expression <= 1) && (expression == 0 || expression == 1)) [2024-01-27 14:59:12,315 INFO L98 nessWitnessExtractor]: Location invariant before [L3969-L3969] (((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:12,316 INFO L98 nessWitnessExtractor]: Location invariant before [L3969-L3969] ret == 0 [2024-01-27 14:59:12,316 INFO L98 nessWitnessExtractor]: Location invariant before [L3965-L3965] ret == 0 [2024-01-27 14:59:12,316 INFO L98 nessWitnessExtractor]: Location invariant before [L3965-L3965] (((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:12,316 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3929] data->shared.b == 0 [2024-01-27 14:59:12,316 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3929] my_dev == 0 [2024-01-27 14:59:12,316 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3929] data->shared.a == 0 [2024-01-27 14:59:12,317 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:12,317 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] ret == 0 [2024-01-27 14:59:12,317 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] (long long )probe_ret - (long long )ret >= 0LL [2024-01-27 14:59:12,317 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] probe_ret == 0 [2024-01-27 14:59:12,317 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] (long long )probe_ret + (long long )ret >= 0LL [2024-01-27 14:59:12,317 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] (0LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:12,318 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] (0LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:12,318 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] probe_ret == 0 [2024-01-27 14:59:12,318 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:12,318 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] (long long )probe_ret + (long long )ret >= 0LL [2024-01-27 14:59:12,319 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] (long long )probe_ret - (long long )ret >= 0LL [2024-01-27 14:59:12,320 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] ret == 0 [2024-01-27 14:59:12,320 INFO L98 nessWitnessExtractor]: Location invariant before [L3964-L3964] ret == 0 [2024-01-27 14:59:12,320 INFO L98 nessWitnessExtractor]: Location invariant before [L3964-L3964] ((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:12,320 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3944] (unsigned long )status == 0UL [2024-01-27 14:59:12,320 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] (long long )probe_ret + (long long )ret >= 0LL [2024-01-27 14:59:12,320 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] probe_ret == 0 [2024-01-27 14:59:12,320 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] ret == 0 [2024-01-27 14:59:12,321 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:12,321 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] (long long )probe_ret - (long long )ret >= 0LL [2024-01-27 14:59:12,321 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] (0LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:12,321 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] my_dev == 0 [2024-01-27 14:59:12,321 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] (2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:12,321 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] (2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:12,322 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] (2147483647LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:12,322 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] ret == 0 [2024-01-27 14:59:12,322 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] (2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:12,323 INFO L98 nessWitnessExtractor]: Location invariant before [L3933-L3933] data->shared.b == 0 [2024-01-27 14:59:12,323 INFO L98 nessWitnessExtractor]: Location invariant before [L3933-L3933] res == 0 [2024-01-27 14:59:12,323 INFO L98 nessWitnessExtractor]: Location invariant before [L3933-L3933] data->shared.a == 0 [2024-01-27 14:59:12,323 INFO L98 nessWitnessExtractor]: Location invariant before [L3927-L3927] my_dev == 0 [2024-01-27 14:59:12,324 INFO L98 nessWitnessExtractor]: Location invariant before [L3927-L3927] data->shared.b == 0 [2024-01-27 14:59:12,324 INFO L98 nessWitnessExtractor]: Location invariant before [L3927-L3927] data->shared.a == 0 [2024-01-27 14:59:12,324 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] data->shared.b == 0 [2024-01-27 14:59:12,324 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] my_dev == 0 [2024-01-27 14:59:12,324 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] data->shared.a == 0 [2024-01-27 14:59:12,324 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] 0 == data->shared.a [2024-01-27 14:59:12,324 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] 0 == data->shared.b [2024-01-27 14:59:12,324 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] data->shared.a == data->shared.b [2024-01-27 14:59:12,325 INFO L98 nessWitnessExtractor]: Location invariant before [L3904-L3904] (unsigned long )arg == 0UL [2024-01-27 14:59:12,325 INFO L98 nessWitnessExtractor]: Location invariant before [L3909-L3909] (unsigned long )arg == 0UL [2024-01-27 14:59:12,325 INFO L98 nessWitnessExtractor]: Location invariant after [L3940-L3945] (unsigned long )status == 0UL [2024-01-27 14:59:12,325 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] my_dev == 0 [2024-01-27 14:59:12,325 INFO L98 nessWitnessExtractor]: Location invariant before [L3912-L3912] (unsigned long )arg == 0UL [2024-01-27 14:59:12,325 INFO L98 nessWitnessExtractor]: Location invariant before [L3967-L3967] (((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:12,325 INFO L98 nessWitnessExtractor]: Location invariant before [L3967-L3967] ret == 0 [2024-01-27 14:59:12,325 INFO L98 nessWitnessExtractor]: Location invariant before [L3908-L3908] (unsigned long )arg == 0UL [2024-01-27 14:59:12,326 INFO L98 nessWitnessExtractor]: Location invariant before [L3907-L3907] (unsigned long )arg == 0UL [2024-01-27 14:59:12,326 INFO L98 nessWitnessExtractor]: Location invariant before [L3914-L3914] (unsigned long )arg == 0UL [2024-01-27 14:59:12,326 INFO L98 nessWitnessExtractor]: Location invariant before [L3917-L3917] (unsigned long )arg == 0UL [2024-01-27 14:59:12,326 INFO L98 nessWitnessExtractor]: Location invariant before [L3938-L3938] res != 0 [2024-01-27 14:59:12,327 INFO L98 nessWitnessExtractor]: Location invariant before [L3938-L3938] data->shared.b == 0 [2024-01-27 14:59:12,327 INFO L98 nessWitnessExtractor]: Location invariant before [L3938-L3938] data->shared.a == 0 [2024-01-27 14:59:12,327 INFO L98 nessWitnessExtractor]: Location invariant before [L3938-L3938] my_dev == 0 [2024-01-27 14:59:12,327 INFO L98 nessWitnessExtractor]: Location invariant before [L3913-L3913] (unsigned long )arg == 0UL [2024-01-27 14:59:12,327 INFO L98 nessWitnessExtractor]: Location invariant before [L3923-L3923] my_dev == 0 [2024-01-27 14:59:12,327 INFO L98 nessWitnessExtractor]: Location invariant before [L3931-L3931] my_dev == 0 [2024-01-27 14:59:12,327 INFO L98 nessWitnessExtractor]: Location invariant before [L3931-L3931] res == 0 [2024-01-27 14:59:12,327 INFO L98 nessWitnessExtractor]: Location invariant before [L3931-L3931] data->shared.b == 0 [2024-01-27 14:59:12,328 INFO L98 nessWitnessExtractor]: Location invariant before [L3931-L3931] data->shared.a == 0 [2024-01-27 14:59:12,328 INFO L98 nessWitnessExtractor]: Location invariant before [L3911-L3911] (unsigned long )arg == 0UL [2024-01-27 14:59:12,328 INFO L98 nessWitnessExtractor]: Location invariant before [L3966-L3966] ret == 0 [2024-01-27 14:59:12,328 INFO L98 nessWitnessExtractor]: Location invariant before [L3966-L3966] (((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:12,328 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] my_dev == 0 [2024-01-27 14:59:12,328 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] (2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:12,329 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] (2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:12,329 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] (2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:12,329 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] (2147483647LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:12,329 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] ret == 0 [2024-01-27 14:59:12,329 INFO L98 nessWitnessExtractor]: Location invariant before [L3924-L3924] my_dev == 0 [2024-01-27 14:59:12,329 INFO L98 nessWitnessExtractor]: Location invariant before [L3924-L3924] data->shared.a == 0 [2024-01-27 14:59:12,330 INFO L98 nessWitnessExtractor]: Location invariant before [L3924-L3924] 0 == data->shared.a [2024-01-27 14:59:12,330 INFO L98 nessWitnessExtractor]: Location invariant before [L3935-L3935] res == 0 [2024-01-27 14:59:12,330 INFO L98 nessWitnessExtractor]: Location invariant before [L3934-L3934] res == 0 [2024-01-27 14:59:12,330 INFO L98 nessWitnessExtractor]: Location invariant before [L3958-L3962] ret == 0 [2024-01-27 14:59:12,330 INFO L98 nessWitnessExtractor]: Location invariant before [L3958-L3962] ((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:12,382 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-27 14:59:12,672 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i[186294,186307] [2024-01-27 14:59:12,719 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-27 14:59:12,729 INFO L202 MainTranslator]: Completed pre-run [2024-01-27 14:59:12,753 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i[186294,186307] [2024-01-27 14:59:12,754 WARN L424 MainDispatcher]: Unable to annotate void ldv_assert(int expression) { if (!expression) { ERROR: {reach_error();abort();}}; return; } with a witness entry Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local [2024-01-27 14:59:12,788 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator has thrown an exception: java.lang.ClassCastException: class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer cannot be cast to class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion (de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer and de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @55e69d2) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:920) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:499) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:440) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:907) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:499) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.result.ExpressionResultTransformer.transformDispatchSwitchRexBoolToInt(ExpressionResultTransformer.java:208) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:482) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:451) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.handleAssert(ACSLHandler.java:242) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:228) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:447) at de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.witness.ExtractedWitnessInvariant.instrument(ExtractedWitnessInvariant.java:100) at de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.witness.ExtractedLocationInvariant.transform(ExtractedLocationInvariant.java:61) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.transformWithWitness(MainDispatcher.java:432) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:413) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.handleCompoundStatement(CHandler.java:1096) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1079) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:320) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.chandler.FunctionHandler.handleFunctionDefinition(FunctionHandler.java:386) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1496) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:275) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.processTUchild(CHandler.java:3405) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:2425) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:611) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:258) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.performMainRun(MainTranslator.java:242) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.translate(MainTranslator.java:204) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.run(MainTranslator.java:117) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.(MainTranslator.java:95) at de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver.finish(CACSL2BoogieTranslatorObserver.java:147) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:167) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:150) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:127) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:233) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:227) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:144) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:106) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:319) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2024-01-27 14:59:12,796 INFO L158 Benchmark]: Toolchain (without parser) took 602.02ms. Allocated memory is still 211.8MB. Free memory was 182.7MB in the beginning and 152.3MB in the end (delta: 30.4MB). Peak memory consumption was 29.4MB. Max. memory is 16.1GB. [2024-01-27 14:59:12,796 INFO L158 Benchmark]: Witness Parser took 0.14ms. Allocated memory is still 146.8MB. Free memory is still 98.2MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-27 14:59:12,797 INFO L158 Benchmark]: CDTParser took 0.13ms. Allocated memory is still 146.8MB. Free memory is still 113.3MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-27 14:59:12,797 INFO L158 Benchmark]: CACSL2BoogieTranslator took 599.27ms. Allocated memory is still 211.8MB. Free memory was 182.7MB in the beginning and 152.3MB in the end (delta: 30.4MB). Peak memory consumption was 29.4MB. Max. memory is 16.1GB. [2024-01-27 14:59:12,799 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Witness Parser took 0.14ms. Allocated memory is still 146.8MB. Free memory is still 98.2MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.13ms. Allocated memory is still 146.8MB. Free memory is still 113.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 599.27ms. Allocated memory is still 211.8MB. Free memory was 182.7MB in the beginning and 152.3MB in the end (delta: 30.4MB). Peak memory consumption was 29.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - ExceptionOrErrorResult: ClassCastException: class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer cannot be cast to class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion (de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer and de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @55e69d2) de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: ClassCastException: class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer cannot be cast to class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion (de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer and de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @55e69d2): de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:920) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/race-3_2-container_of-global.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-dev-a340643-m [2024-01-27 14:59:14,843 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-01-27 14:59:14,903 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2024-01-27 14:59:14,910 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-01-27 14:59:14,910 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-01-27 14:59:14,939 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-01-27 14:59:14,939 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-01-27 14:59:14,939 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-01-27 14:59:14,940 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-01-27 14:59:14,943 INFO L153 SettingsManager]: * Use memory slicer=true [2024-01-27 14:59:14,943 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-01-27 14:59:14,943 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-01-27 14:59:14,944 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-01-27 14:59:14,945 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-01-27 14:59:14,945 INFO L153 SettingsManager]: * Use SBE=true [2024-01-27 14:59:14,946 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-01-27 14:59:14,946 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-01-27 14:59:14,946 INFO L153 SettingsManager]: * sizeof long=4 [2024-01-27 14:59:14,946 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-01-27 14:59:14,946 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-01-27 14:59:14,947 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-01-27 14:59:14,947 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-01-27 14:59:14,948 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-01-27 14:59:14,948 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2024-01-27 14:59:14,948 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-01-27 14:59:14,948 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-01-27 14:59:14,948 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-01-27 14:59:14,949 INFO L153 SettingsManager]: * sizeof long double=12 [2024-01-27 14:59:14,949 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-01-27 14:59:14,949 INFO L153 SettingsManager]: * Use constant arrays=true [2024-01-27 14:59:14,950 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-01-27 14:59:14,950 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-01-27 14:59:14,950 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-01-27 14:59:14,950 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-01-27 14:59:14,951 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-01-27 14:59:14,951 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-01-27 14:59:14,952 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-01-27 14:59:14,952 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-01-27 14:59:14,952 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-01-27 14:59:14,952 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-01-27 14:59:14,952 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-01-27 14:59:14,953 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-01-27 14:59:14,953 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-01-27 14:59:14,953 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-01-27 14:59:14,953 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-01-27 14:59:14,953 INFO L153 SettingsManager]: * Logic for external solver=AUFBV [2024-01-27 14:59:14,953 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-01-27 14:59:15,202 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-01-27 14:59:15,215 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-01-27 14:59:15,216 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-01-27 14:59:15,217 INFO L270 PluginConnector]: Initializing CDTParser... [2024-01-27 14:59:15,218 INFO L274 PluginConnector]: CDTParser initialized [2024-01-27 14:59:15,218 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i [2024-01-27 14:59:16,327 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-01-27 14:59:16,566 INFO L384 CDTParser]: Found 1 translation units. [2024-01-27 14:59:16,567 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i [2024-01-27 14:59:16,589 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/92ffa8eee/ba9f7ef511ee4f5a868b923fed4af463/FLAG7a4c542cb [2024-01-27 14:59:16,599 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/92ffa8eee/ba9f7ef511ee4f5a868b923fed4af463 [2024-01-27 14:59:16,601 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-01-27 14:59:16,605 INFO L274 PluginConnector]: Witness Parser initialized [2024-01-27 14:59:16,605 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/race-3_2-container_of-global.yml/witness.yml [2024-01-27 14:59:16,736 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-01-27 14:59:16,737 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-01-27 14:59:16,740 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-01-27 14:59:16,740 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-01-27 14:59:16,743 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-01-27 14:59:16,743 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.01 02:59:16" (1/2) ... [2024-01-27 14:59:16,745 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@73337fbe and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.01 02:59:16, skipping insertion in model container [2024-01-27 14:59:16,745 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.01 02:59:16" (1/2) ... [2024-01-27 14:59:16,746 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@47b72773 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.01 02:59:16, skipping insertion in model container [2024-01-27 14:59:16,747 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 27.01 02:59:16" (2/2) ... [2024-01-27 14:59:16,747 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@73337fbe and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.01 02:59:16, skipping insertion in model container [2024-01-27 14:59:16,747 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 27.01 02:59:16" (2/2) ... [2024-01-27 14:59:16,747 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-01-27 14:59:16,866 INFO L96 nessWitnessExtractor]: Found the following entries in the witness: [2024-01-27 14:59:16,867 INFO L98 nessWitnessExtractor]: Location invariant before [L3912-L3912] (unsigned long )arg == 0UL [2024-01-27 14:59:16,867 INFO L98 nessWitnessExtractor]: Location invariant before [L3909-L3909] (unsigned long )arg == 0UL [2024-01-27 14:59:16,867 INFO L98 nessWitnessExtractor]: Location invariant before [L3910-L3910] (unsigned long )arg == 0UL [2024-01-27 14:59:16,867 INFO L98 nessWitnessExtractor]: Location invariant before [L3965-L3965] ret == 0 [2024-01-27 14:59:16,868 INFO L98 nessWitnessExtractor]: Location invariant before [L3965-L3965] (((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:16,868 INFO L98 nessWitnessExtractor]: Location invariant before [L3927-L3927] data->shared.a == 0 [2024-01-27 14:59:16,868 INFO L98 nessWitnessExtractor]: Location invariant before [L3927-L3927] my_dev == 0 [2024-01-27 14:59:16,868 INFO L98 nessWitnessExtractor]: Location invariant before [L3927-L3927] data->shared.b == 0 [2024-01-27 14:59:16,868 INFO L98 nessWitnessExtractor]: Location invariant before [L3907-L3907] (unsigned long )arg == 0UL [2024-01-27 14:59:16,876 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] (unsigned long )status == 0UL [2024-01-27 14:59:16,876 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] ret == 0 [2024-01-27 14:59:16,876 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] (long long )probe_ret + (long long )ret >= 0LL [2024-01-27 14:59:16,876 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] (0LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:16,877 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] (long long )probe_ret - (long long )ret >= 0LL [2024-01-27 14:59:16,877 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:16,877 INFO L98 nessWitnessExtractor]: Location invariant before [L3960-L3960] probe_ret == 0 [2024-01-27 14:59:16,877 INFO L98 nessWitnessExtractor]: Location invariant before [L3966-L3966] ret == 0 [2024-01-27 14:59:16,877 INFO L98 nessWitnessExtractor]: Location invariant before [L3966-L3966] (((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:16,878 INFO L98 nessWitnessExtractor]: Location invariant before [L3933-L3933] data->shared.b == 0 [2024-01-27 14:59:16,878 INFO L98 nessWitnessExtractor]: Location invariant before [L3933-L3933] data->shared.a == 0 [2024-01-27 14:59:16,878 INFO L98 nessWitnessExtractor]: Location invariant before [L3933-L3933] res == 0 [2024-01-27 14:59:16,878 INFO L98 nessWitnessExtractor]: Location invariant before [L3964-L3964] ret == 0 [2024-01-27 14:59:16,878 INFO L98 nessWitnessExtractor]: Location invariant before [L3964-L3964] ((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:16,878 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] (unsigned long )arg == 0UL [2024-01-27 14:59:16,878 INFO L98 nessWitnessExtractor]: Location invariant before [L3904-L3904] (unsigned long )arg == 0UL [2024-01-27 14:59:16,879 INFO L98 nessWitnessExtractor]: Location invariant before [L3958-L3962] ((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:16,879 INFO L98 nessWitnessExtractor]: Location invariant before [L3958-L3962] ret == 0 [2024-01-27 14:59:16,879 INFO L98 nessWitnessExtractor]: Location invariant before [L3922-L3922] my_dev == 0 [2024-01-27 14:59:16,879 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3944] (unsigned long )status == 0UL [2024-01-27 14:59:16,879 INFO L98 nessWitnessExtractor]: Location invariant after [L3936-L3937] my_dev == 0 [2024-01-27 14:59:16,880 INFO L98 nessWitnessExtractor]: Location invariant after [L3936-L3937] data->shared.a == 0 [2024-01-27 14:59:16,880 INFO L98 nessWitnessExtractor]: Location invariant after [L3936-L3937] data->shared.b == 0 [2024-01-27 14:59:16,880 INFO L98 nessWitnessExtractor]: Location invariant after [L3936-L3937] res != 0 [2024-01-27 14:59:16,880 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] (long long )probe_ret - (long long )ret >= 0LL [2024-01-27 14:59:16,881 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:16,882 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] probe_ret == 0 [2024-01-27 14:59:16,882 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] (0LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:16,882 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] (long long )probe_ret + (long long )ret >= 0LL [2024-01-27 14:59:16,882 INFO L98 nessWitnessExtractor]: Location invariant before [L3961-L3961] ret == 0 [2024-01-27 14:59:16,882 INFO L98 nessWitnessExtractor]: Location invariant before [L3908-L3908] (unsigned long )arg == 0UL [2024-01-27 14:59:16,882 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] my_dev == 0 [2024-01-27 14:59:16,882 INFO L98 nessWitnessExtractor]: Location invariant before [L3969-L3969] ret == 0 [2024-01-27 14:59:16,882 INFO L98 nessWitnessExtractor]: Location invariant before [L3969-L3969] (((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:16,883 INFO L98 nessWitnessExtractor]: Location invariant before [L3887-L3887] (expression == 1 && my_dev == 0) || ((0 <= expression && expression <= 1) && (expression == 0 || expression == 1)) [2024-01-27 14:59:16,883 INFO L98 nessWitnessExtractor]: Location invariant before [L3887-L3887] expression == 0 [2024-01-27 14:59:16,883 INFO L98 nessWitnessExtractor]: Location invariant before [L3887-L3887] expression == 1 [2024-01-27 14:59:16,883 INFO L98 nessWitnessExtractor]: Location invariant before [L3926-L3926] data->shared.b == 0 [2024-01-27 14:59:16,883 INFO L98 nessWitnessExtractor]: Location invariant before [L3926-L3926] data->shared.a == 0 [2024-01-27 14:59:16,884 INFO L98 nessWitnessExtractor]: Location invariant before [L3926-L3926] my_dev == 0 [2024-01-27 14:59:16,884 INFO L98 nessWitnessExtractor]: Location invariant before [L3967-L3967] ret == 0 [2024-01-27 14:59:16,884 INFO L98 nessWitnessExtractor]: Location invariant before [L3967-L3967] (((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:16,884 INFO L98 nessWitnessExtractor]: Location invariant before [L3914-L3914] (unsigned long )arg == 0UL [2024-01-27 14:59:16,885 INFO L98 nessWitnessExtractor]: Location invariant before [L3935-L3935] res == 0 [2024-01-27 14:59:16,885 INFO L98 nessWitnessExtractor]: Location invariant after [L3940-L3945] (unsigned long )status == 0UL [2024-01-27 14:59:16,885 INFO L98 nessWitnessExtractor]: Location invariant before [L3913-L3913] (unsigned long )arg == 0UL [2024-01-27 14:59:16,886 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] probe_ret == 0 [2024-01-27 14:59:16,886 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] (long long )probe_ret + (long long )ret >= 0LL [2024-01-27 14:59:16,886 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] (long long )probe_ret - (long long )ret >= 0LL [2024-01-27 14:59:16,886 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:16,886 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] (0LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:16,886 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] ret == 0 [2024-01-27 14:59:16,886 INFO L98 nessWitnessExtractor]: Location invariant before [L3934-L3934] res == 0 [2024-01-27 14:59:16,886 INFO L98 nessWitnessExtractor]: Location invariant before [L3963-L3963] ret == 0 [2024-01-27 14:59:16,887 INFO L98 nessWitnessExtractor]: Location invariant before [L3963-L3963] ((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0) [2024-01-27 14:59:16,887 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] (2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:16,887 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] my_dev == 0 [2024-01-27 14:59:16,887 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] ret == 0 [2024-01-27 14:59:16,887 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] (2147483647LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:16,887 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] (2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:16,887 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] (2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:16,887 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] (4294967295LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:16,888 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] my_dev == 0 [2024-01-27 14:59:16,888 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] (4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:16,888 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] (4294967294LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:16,888 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] (4294967295LL + (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:16,888 INFO L98 nessWitnessExtractor]: Location invariant before [L3938-L3938] data->shared.a == 0 [2024-01-27 14:59:16,889 INFO L98 nessWitnessExtractor]: Location invariant before [L3938-L3938] my_dev == 0 [2024-01-27 14:59:16,889 INFO L98 nessWitnessExtractor]: Location invariant before [L3938-L3938] res != 0 [2024-01-27 14:59:16,889 INFO L98 nessWitnessExtractor]: Location invariant before [L3938-L3938] data->shared.b == 0 [2024-01-27 14:59:16,889 INFO L98 nessWitnessExtractor]: Location invariant before [L3917-L3917] (unsigned long )arg == 0UL [2024-01-27 14:59:16,889 INFO L98 nessWitnessExtractor]: Location invariant before [L3911-L3911] (unsigned long )arg == 0UL [2024-01-27 14:59:16,889 INFO L98 nessWitnessExtractor]: Location invariant before [L3931-L3931] res == 0 [2024-01-27 14:59:16,889 INFO L98 nessWitnessExtractor]: Location invariant before [L3931-L3931] data->shared.a == 0 [2024-01-27 14:59:16,890 INFO L98 nessWitnessExtractor]: Location invariant before [L3931-L3931] my_dev == 0 [2024-01-27 14:59:16,890 INFO L98 nessWitnessExtractor]: Location invariant before [L3931-L3931] data->shared.b == 0 [2024-01-27 14:59:16,890 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] my_dev == 0 [2024-01-27 14:59:16,890 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] data->shared.a == 0 [2024-01-27 14:59:16,890 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] 0 == data->shared.b [2024-01-27 14:59:16,890 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] 0 == data->shared.a [2024-01-27 14:59:16,890 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] data->shared.b == 0 [2024-01-27 14:59:16,891 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] data->shared.a == data->shared.b [2024-01-27 14:59:16,891 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] (2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:16,891 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] (2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:16,891 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] (2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL [2024-01-27 14:59:16,891 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] ret == 0 [2024-01-27 14:59:16,892 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] (2147483647LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-27 14:59:16,892 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3968] my_dev == 0 [2024-01-27 14:59:16,892 INFO L98 nessWitnessExtractor]: Location invariant before [L3923-L3923] my_dev == 0 [2024-01-27 14:59:16,892 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3929] my_dev == 0 [2024-01-27 14:59:16,892 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3929] data->shared.a == 0 [2024-01-27 14:59:16,892 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3929] data->shared.b == 0 [2024-01-27 14:59:16,893 INFO L98 nessWitnessExtractor]: Location invariant before [L3924-L3924] 0 == data->shared.a [2024-01-27 14:59:16,893 INFO L98 nessWitnessExtractor]: Location invariant before [L3924-L3924] my_dev == 0 [2024-01-27 14:59:16,893 INFO L98 nessWitnessExtractor]: Location invariant before [L3924-L3924] data->shared.a == 0 [2024-01-27 14:59:16,939 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-27 14:59:17,258 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i[186294,186307] [2024-01-27 14:59:17,293 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-27 14:59:17,308 INFO L199 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2024-01-27 14:59:17,329 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-27 14:59:17,352 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i[186294,186307] [2024-01-27 14:59:17,369 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-27 14:59:17,374 INFO L202 MainTranslator]: Completed pre-run [2024-01-27 14:59:17,425 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_2-container_of-global.i[186294,186307] [2024-01-27 14:59:17,426 WARN L424 MainDispatcher]: Unable to annotate void ldv_assert(int expression) { if (!expression) { ERROR: {reach_error();abort();}}; return; } with a witness entry Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local [2024-01-27 14:59:17,462 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator has thrown an exception: java.lang.ClassCastException: class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer cannot be cast to class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion (de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer and de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @34abdee4) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:920) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:499) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:440) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:907) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:499) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.result.ExpressionResultTransformer.transformDispatchSwitchRexBoolToInt(ExpressionResultTransformer.java:208) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:484) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:451) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.handleAssert(ACSLHandler.java:242) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:228) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:447) at de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.witness.ExtractedWitnessInvariant.instrument(ExtractedWitnessInvariant.java:100) at de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.witness.ExtractedLocationInvariant.transform(ExtractedLocationInvariant.java:61) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.transformWithWitness(MainDispatcher.java:432) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:413) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.handleCompoundStatement(CHandler.java:1096) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1079) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:320) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.chandler.FunctionHandler.handleFunctionDefinition(FunctionHandler.java:386) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1496) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:275) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.processTUchild(CHandler.java:3405) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:2425) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:611) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:258) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.performMainRun(MainTranslator.java:242) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.translate(MainTranslator.java:204) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.run(MainTranslator.java:117) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.(MainTranslator.java:95) at de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver.finish(CACSL2BoogieTranslatorObserver.java:147) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:167) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:150) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:127) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:233) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:227) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:144) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:106) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:319) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2024-01-27 14:59:17,466 INFO L158 Benchmark]: Toolchain (without parser) took 727.82ms. Allocated memory was 58.7MB in the beginning and 86.0MB in the end (delta: 27.3MB). Free memory was 25.2MB in the beginning and 49.0MB in the end (delta: -23.8MB). Peak memory consumption was 17.1MB. Max. memory is 16.1GB. [2024-01-27 14:59:17,466 INFO L158 Benchmark]: CDTParser took 0.17ms. Allocated memory is still 58.7MB. Free memory was 35.4MB in the beginning and 35.3MB in the end (delta: 73.4kB). There was no memory consumed. Max. memory is 16.1GB. [2024-01-27 14:59:17,467 INFO L158 Benchmark]: Witness Parser took 0.16ms. Allocated memory is still 58.7MB. Free memory was 31.6MB in the beginning and 31.4MB in the end (delta: 157.6kB). There was no memory consumed. Max. memory is 16.1GB. [2024-01-27 14:59:17,467 INFO L158 Benchmark]: CACSL2BoogieTranslator took 725.11ms. Allocated memory was 58.7MB in the beginning and 86.0MB in the end (delta: 27.3MB). Free memory was 25.1MB in the beginning and 49.0MB in the end (delta: -23.9MB). Peak memory consumption was 17.1MB. Max. memory is 16.1GB. [2024-01-27 14:59:17,468 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.17ms. Allocated memory is still 58.7MB. Free memory was 35.4MB in the beginning and 35.3MB in the end (delta: 73.4kB). There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.16ms. Allocated memory is still 58.7MB. Free memory was 31.6MB in the beginning and 31.4MB in the end (delta: 157.6kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 725.11ms. Allocated memory was 58.7MB in the beginning and 86.0MB in the end (delta: 27.3MB). Free memory was 25.1MB in the beginning and 49.0MB in the end (delta: -23.9MB). Peak memory consumption was 17.1MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - ExceptionOrErrorResult: ClassCastException: class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer cannot be cast to class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion (de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer and de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @34abdee4) de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: ClassCastException: class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer cannot be cast to class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion (de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer and de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @34abdee4): de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:920) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: ClassCastException: class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer cannot be cast to class de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion (de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CPointer and de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.container.c.CStructOrUnion are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @34abdee4)