Index: Source/bindings/scripts/v8_methods.py |
diff --git a/Source/bindings/scripts/v8_methods.py b/Source/bindings/scripts/v8_methods.py |
index 8c10166bca4d2d5bc7405be95cf6105175797f1b..785e7de59b5cbbbd80abd8a808686c1fca98f338 100644 |
--- a/Source/bindings/scripts/v8_methods.py |
+++ b/Source/bindings/scripts/v8_methods.py |
@@ -141,7 +141,14 @@ def generate_argument(interface, method, argument, index): |
extended_attributes = argument.extended_attributes |
idl_type = argument.idl_type |
this_cpp_value = cpp_value(interface, method, index) |
+ has_type_checking_unrestricted = ( |
+ (has_extended_attribute_value(interface, 'TypeChecking', 'Unrestricted') or |
+ has_extended_attribute_value(method, 'TypeChecking', 'Unrestricted')) and |
+ idl_type.name in ('Float', 'Double')) |
+ if has_type_checking_unrestricted: |
+ includes.add('wtf/dtoa/double.h') |
is_variadic_wrapper_type = argument.is_variadic and idl_type.is_wrapper_type |
+ |
return { |
'cpp_type': idl_type.cpp_type_args(used_in_cpp_sequence=is_variadic_wrapper_type), |
'cpp_value': this_cpp_value, |
@@ -156,6 +163,7 @@ def generate_argument(interface, method, argument, index): |
(has_extended_attribute_value(interface, 'TypeChecking', 'Interface') or |
has_extended_attribute_value(method, 'TypeChecking', 'Interface')) and |
idl_type.is_wrapper_type, |
+ 'has_type_checking_unrestricted': has_type_checking_unrestricted, |
# Dictionary is special-cased, but arrays and sequences shouldn't be |
'idl_type': not idl_type.array_or_sequence_type and idl_type.base_type, |
'idl_type_object': idl_type, |