./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/goblint-regression/28-race_reach_28-funptr_racefree.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/28-race_reach_28-funptr_racefree.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 8857f20b 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/goblint-regression/28-race_reach_28-funptr_racefree.i ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/28-race_reach_28-funptr_racefree.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-8857f20-m [2024-01-29 22:55:41,120 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-01-29 22:55:41,179 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-01-29 22:55:41,188 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-01-29 22:55:41,189 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-01-29 22:55:41,214 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-01-29 22:55:41,218 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-01-29 22:55:41,218 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-01-29 22:55:41,219 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-01-29 22:55:41,222 INFO L153 SettingsManager]: * Use memory slicer=true [2024-01-29 22:55:41,222 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-01-29 22:55:41,223 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-01-29 22:55:41,223 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-01-29 22:55:41,224 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-01-29 22:55:41,225 INFO L153 SettingsManager]: * Use SBE=true [2024-01-29 22:55:41,225 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-01-29 22:55:41,225 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-01-29 22:55:41,225 INFO L153 SettingsManager]: * sizeof long=4 [2024-01-29 22:55:41,226 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-01-29 22:55:41,226 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-01-29 22:55:41,226 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-01-29 22:55:41,226 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-01-29 22:55:41,227 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-01-29 22:55:41,227 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-01-29 22:55:41,227 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-01-29 22:55:41,227 INFO L153 SettingsManager]: * sizeof long double=12 [2024-01-29 22:55:41,227 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-01-29 22:55:41,228 INFO L153 SettingsManager]: * Use constant arrays=true [2024-01-29 22:55:41,228 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-01-29 22:55:41,228 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-01-29 22:55:41,229 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-01-29 22:55:41,229 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-01-29 22:55:41,229 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-01-29 22:55:41,230 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-01-29 22:55:41,230 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-01-29 22:55:41,230 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-01-29 22:55:41,230 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-01-29 22:55:41,230 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-01-29 22:55:41,231 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-01-29 22:55:41,231 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-01-29 22:55:41,231 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-01-29 22:55:41,231 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-01-29 22:55:41,231 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-01-29 22:55:41,232 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-29 22:55:41,470 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-01-29 22:55:41,489 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-01-29 22:55:41,491 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-01-29 22:55:41,492 INFO L270 PluginConnector]: Initializing CDTParser... [2024-01-29 22:55:41,492 INFO L274 PluginConnector]: CDTParser initialized [2024-01-29 22:55:41,493 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/goblint-regression/28-race_reach_28-funptr_racefree.i [2024-01-29 22:55:42,585 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-01-29 22:55:42,821 INFO L384 CDTParser]: Found 1 translation units. [2024-01-29 22:55:42,821 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/28-race_reach_28-funptr_racefree.i [2024-01-29 22:55:42,833 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a7d385075/bf6d0e60e7954a1ead0972123d9872c9/FLAG6b3d265ae [2024-01-29 22:55:42,843 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a7d385075/bf6d0e60e7954a1ead0972123d9872c9 [2024-01-29 22:55:42,845 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-01-29 22:55:42,849 INFO L274 PluginConnector]: Witness Parser initialized [2024-01-29 22:55:42,850 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/28-race_reach_28-funptr_racefree.yml/witness.yml [2024-01-29 22:55:42,989 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-01-29 22:55:42,989 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-01-29 22:55:42,990 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-01-29 22:55:42,990 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-01-29 22:55:42,994 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-01-29 22:55:42,995 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.01 10:55:42" (1/2) ... [2024-01-29 22:55:42,996 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5d9780db and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.01 10:55:42, skipping insertion in model container [2024-01-29 22:55:42,996 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.01 10:55:42" (1/2) ... [2024-01-29 22:55:42,997 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@1f56ca6a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.01 10:55:42, skipping insertion in model container [2024-01-29 22:55:42,997 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:55:42" (2/2) ... [2024-01-29 22:55:42,997 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5d9780db and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:55:42, skipping insertion in model container [2024-01-29 22:55:42,998 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:55:42" (2/2) ... [2024-01-29 22:55:42,998 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-01-29 22:55:43,053 INFO L96 nessWitnessExtractor]: Found the following entries in the witness: [2024-01-29 22:55:43,054 INFO L98 nessWitnessExtractor]: Location invariant before [L949-L949] (unsigned long )arg == 0UL [2024-01-29 22:55:43,055 INFO L98 nessWitnessExtractor]: Loop invariant at [L956-L956] ((((((((((((((((((((((((i == 11 || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (((0 == i && global == 0) && i == 0) && (void *)f == (void *)(& good))) || (25 <= i && i <= 10000)) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12 [2024-01-29 22:55:43,055 INFO L98 nessWitnessExtractor]: Location invariant before [L956-L956] ((((((((((((((((((((((((i == 11 || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (((0 == i && global == 0) && i == 0) && (void *)f == (void *)(& good))) || (25 <= i && i <= 9999)) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12 [2024-01-29 22:55:43,055 INFO L98 nessWitnessExtractor]: Location invariant before [L950-L950] ((unsigned long )arg == 0UL) && ((void *)f == (void *)(& good)) [2024-01-29 22:55:43,055 INFO L98 nessWitnessExtractor]: Location invariant before [L950-L950] (unsigned long )arg == 0UL [2024-01-29 22:55:43,056 INFO L98 nessWitnessExtractor]: Location invariant before [L960-L960] i == 10000 [2024-01-29 22:55:43,056 INFO L98 nessWitnessExtractor]: Location invariant before [L959-L959] (i == 10000) && ((void *)f == (void *)(& good)) [2024-01-29 22:55:43,056 INFO L98 nessWitnessExtractor]: Location invariant before [L959-L959] i == 10000 [2024-01-29 22:55:43,056 INFO L98 nessWitnessExtractor]: Location invariant before [L957-L957] i == 10000 [2024-01-29 22:55:43,056 INFO L98 nessWitnessExtractor]: Location invariant before [L953-L953] (unsigned long )arg == 0UL [2024-01-29 22:55:43,056 INFO L98 nessWitnessExtractor]: Location invariant before [L953-L953] ((unsigned long )arg == 0UL) && ((void *)g == (void *)(& good)) [2024-01-29 22:55:43,057 INFO L98 nessWitnessExtractor]: Location invariant before [L958-L958] (i == 10000) && ((void *)f == (void *)(& good)) [2024-01-29 22:55:43,057 INFO L98 nessWitnessExtractor]: Location invariant before [L958-L958] i == 10000 [2024-01-29 22:55:43,057 INFO L98 nessWitnessExtractor]: Location invariant before [L951-L951] ((unsigned long )arg == 0UL) && ((void *)f == (void *)(& good)) [2024-01-29 22:55:43,057 INFO L98 nessWitnessExtractor]: Location invariant before [L951-L951] (((unsigned long )arg == 0UL) && ((void *)f == (void *)(& good))) && ((void *)g == (void *)(& good)) [2024-01-29 22:55:43,057 INFO L98 nessWitnessExtractor]: Location invariant before [L951-L951] (unsigned long )arg == 0UL [2024-01-29 22:55:43,057 INFO L98 nessWitnessExtractor]: Location invariant before [L952-L952] ((unsigned long )arg == 0UL) && ((void *)g == (void *)(& good)) [2024-01-29 22:55:43,057 INFO L98 nessWitnessExtractor]: Location invariant before [L952-L952] (unsigned long )arg == 0UL [2024-01-29 22:55:43,057 INFO L98 nessWitnessExtractor]: Location invariant before [L943-L943] global == 0 [2024-01-29 22:55:43,058 INFO L98 nessWitnessExtractor]: Location invariant before [L964-L964] (i == 10000) && (i == 10000) [2024-01-29 22:55:43,058 INFO L98 nessWitnessExtractor]: Location invariant before [L964-L964] i == 10000 [2024-01-29 22:55:43,058 INFO L98 nessWitnessExtractor]: Location invariant before [L929-L929] global == 0 [2024-01-29 22:55:43,058 INFO L98 nessWitnessExtractor]: Location invariant before [L929-L929] (global == 0) && (global == 0) [2024-01-29 22:55:43,058 INFO L98 nessWitnessExtractor]: Loop invariant at [L942-L942] global == 0 [2024-01-29 22:55:43,059 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] (global == 1) && (global == 1) [2024-01-29 22:55:43,059 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] global == 1 [2024-01-29 22:55:43,059 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] ((global == 1) && (global == 1)) && (global == 0) [2024-01-29 22:55:43,059 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] ((global == 1) && (global == 1)) && (global == 0) [2024-01-29 22:55:43,059 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] ((global == 1) && (global == 1)) && (global == 1) [2024-01-29 22:55:43,059 INFO L98 nessWitnessExtractor]: Loop invariant at [L942-L942] (global == 0) && (global == 1) [2024-01-29 22:55:43,060 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] (global == 1) && (global == 0) [2024-01-29 22:55:43,060 INFO L98 nessWitnessExtractor]: Location invariant before [L963-L963] i == 10000 [2024-01-29 22:55:43,060 INFO L98 nessWitnessExtractor]: Location invariant before [L963-L963] (i == 10000) && ((((((((((((((((((((((((((25 <= i && i <= 9999) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0)) [2024-01-29 22:55:43,060 INFO L98 nessWitnessExtractor]: Loop invariant at [L963-L963] (i == 10000) && ((((((((((((((((((((((((((25 <= i && i <= 10000) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0)) [2024-01-29 22:55:43,060 INFO L98 nessWitnessExtractor]: Loop invariant at [L963-L963] i == 10000 [2024-01-29 22:55:43,060 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] (global == 0) && (i == 10000) [2024-01-29 22:55:43,061 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] ((global == 0) && (i == 10000)) && (global == 0) [2024-01-29 22:55:43,061 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] ((global == 0) && (i == 10000)) && (i == 10000) [2024-01-29 22:55:43,062 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] ((global == 0) && (i == 10000)) && (global == 0) [2024-01-29 22:55:43,062 INFO L98 nessWitnessExtractor]: Loop invariant at [L961-L961] (global == 0) && (i == 10000) [2024-01-29 22:55:43,062 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] ((global == 0) && (i == 10000)) && (i == 10000) [2024-01-29 22:55:43,062 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] global == 0 [2024-01-29 22:55:43,062 INFO L98 nessWitnessExtractor]: Loop invariant at [L961-L961] global == 0 [2024-01-29 22:55:43,062 INFO L98 nessWitnessExtractor]: Loop invariant at [L956-L956] ((((((((((((((((((((((((i == 11 || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (((0 == i && global == 0) && i == 0) && (void *)f == (void *)(& good))) || (25 <= i && i <= 10000)) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12 [2024-01-29 22:55:43,062 INFO L98 nessWitnessExtractor]: Location invariant before [L956-L956] ((((((((((((((((((((((((i == 11 || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (((0 == i && global == 0) && i == 0) && (void *)f == (void *)(& good))) || (25 <= i && i <= 9999)) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12 [2024-01-29 22:55:43,063 INFO L98 nessWitnessExtractor]: Location invariant before [L962-L962] (global == 0) && (i == 10000) [2024-01-29 22:55:43,063 INFO L98 nessWitnessExtractor]: Location invariant before [L962-L962] global == 0 [2024-01-29 22:55:43,110 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-29 22:55:43,471 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/28-race_reach_28-funptr_racefree.i[41323,41336] [2024-01-29 22:55:43,491 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-29 22:55:43,502 INFO L202 MainTranslator]: Completed pre-run [2024-01-29 22:55:43,524 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/28-race_reach_28-funptr_racefree.i[41323,41336] [2024-01-29 22:55:43,525 WARN L424 MainDispatcher]: Unable to annotate void __VERIFIER_assert(int cond) { if(!(cond)) { ERROR: {reach_error();abort();} } } 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 [2024-01-29 22:55:43,562 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator has thrown an exception: java.lang.UnsupportedOperationException: not yet implemented ACSLType[null] at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.AcslTypeUtils.translateAcslTypeToCType(AcslTypeUtils.java:95) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:949) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:472) 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:478) 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.dispatchSwitch(ACSLHandler.java:446) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:502) 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:238) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:224) 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:1105) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1088) 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:1505) 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:3414) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:2434) 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-29 22:55:43,566 INFO L158 Benchmark]: Toolchain (without parser) took 575.85ms. Allocated memory is still 151.0MB. Free memory was 122.8MB in the beginning and 99.4MB in the end (delta: 23.3MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-01-29 22:55:43,566 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 104.9MB. Free memory was 76.2MB in the beginning and 76.1MB in the end (delta: 120.4kB). There was no memory consumed. Max. memory is 16.1GB. [2024-01-29 22:55:43,567 INFO L158 Benchmark]: Witness Parser took 0.16ms. Allocated memory is still 151.0MB. Free memory is still 81.3MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-29 22:55:43,567 INFO L158 Benchmark]: CACSL2BoogieTranslator took 574.46ms. Allocated memory is still 151.0MB. Free memory was 122.8MB in the beginning and 99.4MB in the end (delta: 23.3MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-01-29 22:55:43,569 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.15ms. Allocated memory is still 104.9MB. Free memory was 76.2MB in the beginning and 76.1MB in the end (delta: 120.4kB). There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.16ms. Allocated memory is still 151.0MB. Free memory is still 81.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 574.46ms. Allocated memory is still 151.0MB. Free memory was 122.8MB in the beginning and 99.4MB in the end (delta: 23.3MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - ExceptionOrErrorResult: UnsupportedOperationException: not yet implemented ACSLType[null] de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: UnsupportedOperationException: not yet implemented ACSLType[null]: de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.AcslTypeUtils.translateAcslTypeToCType(AcslTypeUtils.java:95) 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/goblint-regression/28-race_reach_28-funptr_racefree.i ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/28-race_reach_28-funptr_racefree.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-8857f20-m [2024-01-29 22:55:45,802 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-01-29 22:55:45,854 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2024-01-29 22:55:45,866 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-01-29 22:55:45,866 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-01-29 22:55:45,891 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-01-29 22:55:45,894 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-01-29 22:55:45,894 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-01-29 22:55:45,895 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-01-29 22:55:45,898 INFO L153 SettingsManager]: * Use memory slicer=true [2024-01-29 22:55:45,900 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-01-29 22:55:45,900 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-01-29 22:55:45,900 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-01-29 22:55:45,901 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-01-29 22:55:45,902 INFO L153 SettingsManager]: * Use SBE=true [2024-01-29 22:55:45,902 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-01-29 22:55:45,902 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-01-29 22:55:45,902 INFO L153 SettingsManager]: * sizeof long=4 [2024-01-29 22:55:45,903 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-01-29 22:55:45,903 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-01-29 22:55:45,903 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-01-29 22:55:45,904 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-01-29 22:55:45,904 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-01-29 22:55:45,904 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2024-01-29 22:55:45,905 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-01-29 22:55:45,905 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-01-29 22:55:45,905 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-01-29 22:55:45,905 INFO L153 SettingsManager]: * sizeof long double=12 [2024-01-29 22:55:45,905 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-01-29 22:55:45,906 INFO L153 SettingsManager]: * Use constant arrays=true [2024-01-29 22:55:45,907 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-01-29 22:55:45,907 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-01-29 22:55:45,907 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-01-29 22:55:45,907 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-01-29 22:55:45,907 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-01-29 22:55:45,908 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-01-29 22:55:45,908 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-01-29 22:55:45,909 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-01-29 22:55:45,909 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-01-29 22:55:45,909 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-01-29 22:55:45,909 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-01-29 22:55:45,909 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-01-29 22:55:45,910 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-01-29 22:55:45,910 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-01-29 22:55:45,910 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-01-29 22:55:45,910 INFO L153 SettingsManager]: * Logic for external solver=AUFBV [2024-01-29 22:55:45,910 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-29 22:55:46,190 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-01-29 22:55:46,205 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-01-29 22:55:46,207 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-01-29 22:55:46,208 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-01-29 22:55:46,219 INFO L274 PluginConnector]: Witness Parser initialized [2024-01-29 22:55:46,222 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/28-race_reach_28-funptr_racefree.yml/witness.yml [2024-01-29 22:55:46,336 INFO L270 PluginConnector]: Initializing CDTParser... [2024-01-29 22:55:46,343 INFO L274 PluginConnector]: CDTParser initialized [2024-01-29 22:55:46,344 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/goblint-regression/28-race_reach_28-funptr_racefree.i [2024-01-29 22:55:47,431 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-01-29 22:55:47,683 INFO L384 CDTParser]: Found 1 translation units. [2024-01-29 22:55:47,683 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/28-race_reach_28-funptr_racefree.i [2024-01-29 22:55:47,699 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b4a81aaab/a96119e791ae4813a6b8fa6678c33646/FLAG164f653a1 [2024-01-29 22:55:47,715 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b4a81aaab/a96119e791ae4813a6b8fa6678c33646 [2024-01-29 22:55:47,716 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-01-29 22:55:47,718 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-01-29 22:55:47,721 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-01-29 22:55:47,721 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-01-29 22:55:47,724 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-01-29 22:55:47,725 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:55:46" (1/2) ... [2024-01-29 22:55:47,727 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@8355b20 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:55:47, skipping insertion in model container [2024-01-29 22:55:47,727 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:55:46" (1/2) ... [2024-01-29 22:55:47,728 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@2e90a2d and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:55:47, skipping insertion in model container [2024-01-29 22:55:47,728 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.01 10:55:47" (2/2) ... [2024-01-29 22:55:47,728 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@8355b20 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.01 10:55:47, skipping insertion in model container [2024-01-29 22:55:47,729 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.01 10:55:47" (2/2) ... [2024-01-29 22:55:47,729 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-01-29 22:55:47,794 INFO L96 nessWitnessExtractor]: Found the following entries in the witness: [2024-01-29 22:55:47,795 INFO L98 nessWitnessExtractor]: Location invariant before [L957-L957] i == 10000 [2024-01-29 22:55:47,796 INFO L98 nessWitnessExtractor]: Location invariant before [L962-L962] global == 0 [2024-01-29 22:55:47,796 INFO L98 nessWitnessExtractor]: Location invariant before [L962-L962] (global == 0) && (i == 10000) [2024-01-29 22:55:47,796 INFO L98 nessWitnessExtractor]: Location invariant before [L929-L929] global == 0 [2024-01-29 22:55:47,796 INFO L98 nessWitnessExtractor]: Location invariant before [L929-L929] (global == 0) && (global == 0) [2024-01-29 22:55:47,796 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] (global == 0) && (global == 0) [2024-01-29 22:55:47,796 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] ((global == 0) && (global == 0)) && (i == 10000) [2024-01-29 22:55:47,796 INFO L98 nessWitnessExtractor]: Loop invariant at [L961-L961] (global == 0) && (i == 10000) [2024-01-29 22:55:47,796 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] ((global == 0) && (global == 0)) && (global == 0) [2024-01-29 22:55:47,797 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] global == 0 [2024-01-29 22:55:47,797 INFO L98 nessWitnessExtractor]: Loop invariant at [L961-L961] global == 0 [2024-01-29 22:55:47,797 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] (global == 0) && (i == 10000) [2024-01-29 22:55:47,797 INFO L98 nessWitnessExtractor]: Location invariant before [L961-L961] ((global == 0) && (global == 0)) && (i == 10000) [2024-01-29 22:55:47,797 INFO L98 nessWitnessExtractor]: Location invariant before [L958-L958] (i == 10000) && ((void *)f == (void *)(& good)) [2024-01-29 22:55:47,797 INFO L98 nessWitnessExtractor]: Location invariant before [L958-L958] i == 10000 [2024-01-29 22:55:47,797 INFO L98 nessWitnessExtractor]: Loop invariant at [L963-L963] i == 10000 [2024-01-29 22:55:47,798 INFO L98 nessWitnessExtractor]: Location invariant before [L963-L963] i == 10000 [2024-01-29 22:55:47,798 INFO L98 nessWitnessExtractor]: Loop invariant at [L963-L963] (i == 10000) && ((((((((((((((((((((((((((25 <= i && i <= 10000) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0)) [2024-01-29 22:55:47,798 INFO L98 nessWitnessExtractor]: Location invariant before [L963-L963] (i == 10000) && ((((((((((((((((((((((((((25 <= i && i <= 9999) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0)) [2024-01-29 22:55:47,798 INFO L98 nessWitnessExtractor]: Loop invariant at [L942-L942] global == 0 [2024-01-29 22:55:47,798 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] (global == 1) && (global == 1) [2024-01-29 22:55:47,799 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] ((global == 1) && (global == 1)) && (global == 1) [2024-01-29 22:55:47,799 INFO L98 nessWitnessExtractor]: Loop invariant at [L942-L942] (global == 0) && (global == 1) [2024-01-29 22:55:47,799 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] ((global == 1) && (global == 1)) && (global == 0) [2024-01-29 22:55:47,799 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] ((global == 1) && (global == 1)) && (global == 0) [2024-01-29 22:55:47,799 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] global == 1 [2024-01-29 22:55:47,799 INFO L98 nessWitnessExtractor]: Location invariant before [L942-L942] (global == 1) && (global == 0) [2024-01-29 22:55:47,799 INFO L98 nessWitnessExtractor]: Location invariant before [L943-L943] global == 0 [2024-01-29 22:55:47,799 INFO L98 nessWitnessExtractor]: Loop invariant at [L956-L956] ((((((((((((((((((((((((i == 11 || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (((0 == i && global == 0) && i == 0) && (void *)f == (void *)(& good))) || (25 <= i && i <= 10000)) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12 [2024-01-29 22:55:47,800 INFO L98 nessWitnessExtractor]: Location invariant before [L956-L956] ((((((((((((((((((((((((i == 11 || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (((0 == i && global == 0) && i == 0) && (void *)f == (void *)(& good))) || (25 <= i && i <= 9999)) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12 [2024-01-29 22:55:47,800 INFO L98 nessWitnessExtractor]: Location invariant before [L953-L953] ((unsigned long )arg == 0UL) && ((void *)g == (void *)(& good)) [2024-01-29 22:55:47,800 INFO L98 nessWitnessExtractor]: Location invariant before [L953-L953] (unsigned long )arg == 0UL [2024-01-29 22:55:47,800 INFO L98 nessWitnessExtractor]: Location invariant before [L960-L960] i == 10000 [2024-01-29 22:55:47,800 INFO L98 nessWitnessExtractor]: Location invariant before [L952-L952] (unsigned long )arg == 0UL [2024-01-29 22:55:47,801 INFO L98 nessWitnessExtractor]: Location invariant before [L952-L952] ((unsigned long )arg == 0UL) && ((void *)g == (void *)(& good)) [2024-01-29 22:55:47,802 INFO L98 nessWitnessExtractor]: Location invariant before [L959-L959] (i == 10000) && ((void *)f == (void *)(& good)) [2024-01-29 22:55:47,802 INFO L98 nessWitnessExtractor]: Location invariant before [L959-L959] i == 10000 [2024-01-29 22:55:47,802 INFO L98 nessWitnessExtractor]: Location invariant before [L950-L950] ((unsigned long )arg == 0UL) && ((void *)f == (void *)(& good)) [2024-01-29 22:55:47,802 INFO L98 nessWitnessExtractor]: Location invariant before [L950-L950] (unsigned long )arg == 0UL [2024-01-29 22:55:47,802 INFO L98 nessWitnessExtractor]: Location invariant before [L964-L964] (i == 10000) && (i == 10000) [2024-01-29 22:55:47,802 INFO L98 nessWitnessExtractor]: Location invariant before [L964-L964] i == 10000 [2024-01-29 22:55:47,802 INFO L98 nessWitnessExtractor]: Location invariant before [L956-L956] ((((((((((((((((((((((((i == 11 || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (((0 == i && global == 0) && i == 0) && (void *)f == (void *)(& good))) || (25 <= i && i <= 9999)) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12 [2024-01-29 22:55:47,802 INFO L98 nessWitnessExtractor]: Loop invariant at [L956-L956] ((((((((((((((((((((((((i == 11 || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (((0 == i && global == 0) && i == 0) && (void *)f == (void *)(& good))) || (25 <= i && i <= 10000)) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12 [2024-01-29 22:55:47,803 INFO L98 nessWitnessExtractor]: Location invariant before [L951-L951] (unsigned long )arg == 0UL [2024-01-29 22:55:47,803 INFO L98 nessWitnessExtractor]: Location invariant before [L951-L951] ((unsigned long )arg == 0UL) && ((void *)f == (void *)(& good)) [2024-01-29 22:55:47,803 INFO L98 nessWitnessExtractor]: Location invariant before [L951-L951] ((unsigned long )arg == 0UL) && ((void *)g == (void *)(& good)) [2024-01-29 22:55:47,803 INFO L98 nessWitnessExtractor]: Location invariant before [L949-L949] (unsigned long )arg == 0UL [2024-01-29 22:55:47,841 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-29 22:55:48,181 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/28-race_reach_28-funptr_racefree.i[41323,41336] [2024-01-29 22:55:48,204 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-29 22:55:48,219 INFO L202 MainTranslator]: Completed pre-run [2024-01-29 22:55:48,255 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/28-race_reach_28-funptr_racefree.i[41323,41336] [2024-01-29 22:55:48,256 WARN L424 MainDispatcher]: Unable to annotate void __VERIFIER_assert(int cond) { if(!(cond)) { ERROR: {reach_error();abort();} } } 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 [2024-01-29 22:55:48,299 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator has thrown an exception: java.lang.UnsupportedOperationException: not yet implemented ACSLType[null] at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.AcslTypeUtils.translateAcslTypeToCType(AcslTypeUtils.java:95) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:949) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainDispatcher.dispatch(MainDispatcher.java:472) 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:478) 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.dispatchSwitch(ACSLHandler.java:446) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:502) 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:238) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.ACSLHandler.visit(ACSLHandler.java:224) 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:1105) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1088) 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:1505) 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:3414) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:2434) 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-29 22:55:48,305 INFO L158 Benchmark]: Toolchain (without parser) took 586.45ms. Allocated memory was 62.9MB in the beginning and 83.9MB in the end (delta: 21.0MB). Free memory was 34.8MB in the beginning and 51.0MB in the end (delta: -16.2MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2024-01-29 22:55:48,306 INFO L158 Benchmark]: Witness Parser took 0.19ms. Allocated memory is still 62.9MB. Free memory was 39.4MB in the beginning and 39.4MB in the end (delta: 51.0kB). There was no memory consumed. Max. memory is 16.1GB. [2024-01-29 22:55:48,306 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 62.9MB. Free memory is still 48.0MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-29 22:55:48,307 INFO L158 Benchmark]: CACSL2BoogieTranslator took 582.78ms. Allocated memory was 62.9MB in the beginning and 83.9MB in the end (delta: 21.0MB). Free memory was 34.6MB in the beginning and 51.0MB in the end (delta: -16.4MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2024-01-29 22:55:48,308 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.19ms. Allocated memory is still 62.9MB. Free memory was 39.4MB in the beginning and 39.4MB in the end (delta: 51.0kB). There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.14ms. Allocated memory is still 62.9MB. Free memory is still 48.0MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 582.78ms. Allocated memory was 62.9MB in the beginning and 83.9MB in the end (delta: 21.0MB). Free memory was 34.6MB in the beginning and 51.0MB in the end (delta: -16.4MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - ExceptionOrErrorResult: UnsupportedOperationException: not yet implemented ACSLType[null] de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: UnsupportedOperationException: not yet implemented ACSLType[null]: de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.AcslTypeUtils.translateAcslTypeToCType(AcslTypeUtils.java:95) 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: UnsupportedOperationException: not yet implemented ACSLType[null]