class AdLint::Cc1::LongDoubleType

Public Class Methods

new(type_tbl) click to toggle source
Calls superclass method AdLint::Cc1::ScalarDataType::new
# File lib/adlint/cc1/type.rb, line 5484
def initialize(type_tbl)
  # FIXME: StandardTypesAccessor is not ready until @type_table is
  #        initialized.
  @type_table = type_tbl
  super(type_tbl, "long double", long_double_size, long_double_alignment)
end

Public Instance Methods

argument_promoted_type() click to toggle source
# File lib/adlint/cc1/type.rb, line 5495
def argument_promoted_type
  self
end
arithmetic_type_with(type) click to toggle source
# File lib/adlint/cc1/type.rb, line 5499
def arithmetic_type_with(type)
  type._arithmetic_type_with_long_double(self)
end
id() click to toggle source
# File lib/adlint/cc1/type.rb, line 5491
def id
  @id ||= LongDoubleTypeId.new
end

Private Instance Methods

exponent_bit_size() click to toggle source
# File lib/adlint/cc1/type.rb, line 5510
def exponent_bit_size
  # TODO: Bit size of the exponent part of `long double' should be
  #       configurable.
  11
end
fraction_bit_size() click to toggle source
# File lib/adlint/cc1/type.rb, line 5504
def fraction_bit_size
  # TODO: Bit size of the fraction part of `long double' should be
  #       configurable.
  52
end