Changes in src/Parser/ExpressionNode.cc [7a780ad:e048ece]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/ExpressionNode.cc
r7a780ad re048ece 23 23 #include <string> // for string, operator+, operator== 24 24 25 #include "AST/BasicKind.hpp" // for BasicKind26 25 #include "AST/Expr.hpp" // for NameExpr 27 #include "AST/Type.hpp" // for Type, LengthFlag, DimentionFlag26 #include "AST/Type.hpp" // for BaseType, SueInstType 28 27 #include "Common/SemanticError.h" // for SemanticError 29 28 #include "Common/utility.h" // for maybeMoveBuild, maybeBuild, CodeLo... … … 127 126 ast::Expr * build_constantInteger( 128 127 const CodeLocation & location, string & str ) { 129 static const ast::Basic Kind kind[2][6] = {128 static const ast::BasicType::Kind kind[2][6] = { 130 129 // short (h) must be before char (hh) because shorter type has the longer suffix 131 { ast::Basic Kind::ShortSignedInt, ast::BasicKind::SignedChar, ast::BasicKind::SignedInt, ast::BasicKind::LongSignedInt, ast::BasicKind::LongLongSignedInt, /* BasicKind::SignedInt128 */ ast::BasicKind::LongLongSignedInt, },132 { ast::Basic Kind::ShortUnsignedInt, ast::BasicKind::UnsignedChar, ast::BasicKind::UnsignedInt, ast::BasicKind::LongUnsignedInt, ast::BasicKind::LongLongUnsignedInt, /* BasicKind::UnsignedInt128 */ ast::BasicKind::LongLongUnsignedInt, },130 { ast::BasicType::ShortSignedInt, ast::BasicType::SignedChar, ast::BasicType::SignedInt, ast::BasicType::LongSignedInt, ast::BasicType::LongLongSignedInt, /* BasicType::SignedInt128 */ ast::BasicType::LongLongSignedInt, }, 131 { ast::BasicType::ShortUnsignedInt, ast::BasicType::UnsignedChar, ast::BasicType::UnsignedInt, ast::BasicType::LongUnsignedInt, ast::BasicType::LongLongUnsignedInt, /* BasicType::UnsignedInt128 */ ast::BasicType::LongLongUnsignedInt, }, 133 132 }; 134 133 … … 314 313 if ( ltype == 6 ) { // int128, (int128)constant 315 314 ret2 = new ast::ConstantExpr( location, 316 new ast::BasicType( ast::Basic Kind::LongLongSignedInt ),315 new ast::BasicType( ast::BasicType::LongLongSignedInt ), 317 316 str2, 318 317 v2 ); … … 380 379 ast::Expr * build_constantFloat( 381 380 const CodeLocation & location, string & str ) { 382 static const ast::Basic Kind kind[2][12] = {383 { ast::Basic Kind::Float, ast::BasicKind::Double, ast::BasicKind::LongDouble, ast::BasicKind::uuFloat80, ast::BasicKind::uuFloat128, ast::BasicKind::uFloat16, ast::BasicKind::uFloat32, ast::BasicKind::uFloat32x, ast::BasicKind::uFloat64, ast::BasicKind::uFloat64x, ast::BasicKind::uFloat128, ast::BasicKind::uFloat128x },384 { ast::Basic Kind::FloatComplex, ast::BasicKind::DoubleComplex, ast::BasicKind::LongDoubleComplex, ast::BasicKind::NUMBER_OF_BASIC_TYPES, ast::BasicKind::NUMBER_OF_BASIC_TYPES, ast::BasicKind::uFloat16Complex, ast::BasicKind::uFloat32Complex, ast::BasicKind::uFloat32xComplex, ast::BasicKind::uFloat64Complex, ast::BasicKind::uFloat64xComplex, ast::BasicKind::uFloat128Complex, ast::BasicKind::uFloat128xComplex },381 static const ast::BasicType::Kind kind[2][12] = { 382 { ast::BasicType::Float, ast::BasicType::Double, ast::BasicType::LongDouble, ast::BasicType::uuFloat80, ast::BasicType::uuFloat128, ast::BasicType::uFloat16, ast::BasicType::uFloat32, ast::BasicType::uFloat32x, ast::BasicType::uFloat64, ast::BasicType::uFloat64x, ast::BasicType::uFloat128, ast::BasicType::uFloat128x }, 383 { ast::BasicType::FloatComplex, ast::BasicType::DoubleComplex, ast::BasicType::LongDoubleComplex, ast::BasicType::NUMBER_OF_BASIC_TYPES, ast::BasicType::NUMBER_OF_BASIC_TYPES, ast::BasicType::uFloat16Complex, ast::BasicType::uFloat32Complex, ast::BasicType::uFloat32xComplex, ast::BasicType::uFloat64Complex, ast::BasicType::uFloat64xComplex, ast::BasicType::uFloat128Complex, ast::BasicType::uFloat128xComplex }, 385 384 }; 386 385 … … 448 447 449 448 ast::Expr * ret = new ast::ConstantExpr( location, 450 new ast::BasicType( ast::Basic Kind::Char ),449 new ast::BasicType( ast::BasicType::Char ), 451 450 str, 452 451 (unsigned long long int)(unsigned char)str[1] ); … … 483 482 Default: // char default string type 484 483 default: 485 strtype = new ast::BasicType( ast::Basic Kind::Char );484 strtype = new ast::BasicType( ast::BasicType::Char ); 486 485 } // switch 487 486 ast::ArrayType * at = new ast::ArrayType( … … 665 664 member->name 666 665 ); 667 ret->result = new ast::BasicType( ast::Basic Kind::LongUnsignedInt );666 ret->result = new ast::BasicType( ast::BasicType::LongUnsignedInt ); 668 667 delete member; 669 668 return ret;
Note:
See TracChangeset
for help on using the changeset viewer.