From ec95665e087d39e29ece455b90e7d5918dc88cee Mon Sep 17 00:00:00 2001 From: Bernhard Schommer Date: Thu, 25 Aug 2016 16:03:57 +0200 Subject: Reuse types from parameters in function definitons In order to allow introducing structs in parameter definitions the environment must keep the type information. Bug 19602 --- cparser/Env.ml | 3 +++ 1 file changed, 3 insertions(+) (limited to 'cparser/Env.ml') diff --git a/cparser/Env.ml b/cparser/Env.ml index dae79ef2..4d902e09 100644 --- a/cparser/Env.ml +++ b/cparser/Env.ml @@ -251,6 +251,9 @@ let add_enum env id info = { env with env_enum = IdentMap.add id info env.env_enum } info.ei_members +let add_types env_old env_new = + { env_new with env_ident = env_old.env_ident;} + (* Error reporting *) open Printf -- cgit From 477f73ef96d957de5a896a05175ceaab7e0dce03 Mon Sep 17 00:00:00 2001 From: Bernhard Schommer Date: Fri, 26 Aug 2016 13:34:50 +0200 Subject: Use old scope in after parameter parsing. Not decrementing the scopes again after a parameter parsing lead to other scoping problems. Bug 19656. --- cparser/Env.ml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'cparser/Env.ml') diff --git a/cparser/Env.ml b/cparser/Env.ml index 4d902e09..2e02dac8 100644 --- a/cparser/Env.ml +++ b/cparser/Env.ml @@ -252,7 +252,7 @@ let add_enum env id info = info.ei_members let add_types env_old env_new = - { env_new with env_ident = env_old.env_ident;} + { env_new with env_ident = env_old.env_ident;env_scope = env_old.env_scope;} (* Error reporting *) -- cgit