instance Located Id where locOf (Id _ l) = locOf l locOf (AntiId _ l) = locOf l instance Located StringLit where locOf (StringLit _ _ l) = locOf l instance Located Storage where locOf (Tauto l) = locOf l locOf (Tregister l) = locOf l locOf (Tstatic l) = locOf l locOf (Textern _ l) = locOf l locOf (Ttypedef l) = locOf l locOf (T__block l) = locOf l locOf (TObjC__weak l) = locOf l locOf (TObjC__strong l) = locOf l locOf (TObjC__unsafe_unretained l) = locOf l instance Located TypeQual where locOf (Tconst l) = locOf l locOf (Tvolatile l) = locOf l locOf (AntiTypeQual _ l) = locOf l locOf (AntiTypeQuals _ l) = locOf l locOf (Tinline l) = locOf l locOf (Trestrict l) = locOf l locOf (TAttr _) = noLoc locOf (TCUDAdevice l) = locOf l locOf (TCUDAglobal l) = locOf l locOf (TCUDAhost l) = locOf l locOf (TCUDAconstant l) = locOf l locOf (TCUDAshared l) = locOf l locOf (TCUDArestrict l) = locOf l locOf (TCUDAnoinline l) = locOf l locOf (TCLprivate l) = locOf l locOf (TCLlocal l) = locOf l locOf (TCLglobal l) = locOf l locOf (TCLconstant l) = locOf l locOf (TCLreadonly l) = locOf l locOf (TCLwriteonly l) = locOf l locOf (TCLkernel l) = locOf l instance Located Sign where locOf (Tsigned l) = locOf l locOf (Tunsigned l) = locOf l instance Located TypeSpec where locOf (Tvoid l) = locOf l locOf (Tchar _ l) = locOf l locOf (Tshort _ l) = locOf l locOf (Tint _ l) = locOf l locOf (Tlong _ l) = locOf l locOf (Tlong_long _ l) = locOf l locOf (Tfloat l) = locOf l locOf (Tdouble l) = locOf l locOf (Tlong_double l) = locOf l locOf (Tstruct _ _ _ l) = locOf l locOf (Tunion _ _ _ l) = locOf l locOf (Tenum _ _ _ l) = locOf l locOf (Tnamed _ _ l) = locOf l locOf (T_Bool l) = locOf l locOf (Tfloat_Complex l) = locOf l locOf (Tdouble_Complex l) = locOf l locOf (Tlong_double_Complex l) = locOf l locOf (Tfloat_Imaginary l) = locOf l locOf (Tdouble_Imaginary l) = locOf l locOf (Tlong_double_Imaginary l) = locOf l locOf (TtypeofExp _ l) = locOf l locOf (TtypeofType _ l) = locOf l locOf (Tva_list l) = locOf l instance Located DeclSpec where locOf (DeclSpec _ _ _ l) = locOf l locOf (AntiDeclSpec _ l) = locOf l locOf (AntiTypeDeclSpec _ _ _ l) = locOf l instance Located ArraySize where locOf (ArraySize _ _ l) = locOf l locOf (VariableArraySize l) = locOf l locOf (NoArraySize l) = locOf l instance Located Decl where locOf (DeclRoot l) = locOf l locOf (Ptr _ _ l) = locOf l locOf (Array _ _ _ l) = locOf l locOf (Proto _ _ l) = locOf l locOf (OldProto _ _ l) = locOf l locOf (AntiTypeDecl _ l) = locOf l locOf (BlockPtr _ _ l) = locOf l instance Located Type where locOf (Type _ _ l) = locOf l locOf (AntiType _ l) = locOf l instance Located Designator where locOf (IndexDesignator _ l) = locOf l locOf (MemberDesignator _ l) = locOf l instance Located Designation where locOf (Designation _ l) = locOf l instance Located Initializer where locOf (ExpInitializer _ l) = locOf l locOf (CompoundInitializer _ l) = locOf l locOf (AntiInit _ l) = locOf l locOf (AntiInits _ l) = locOf l instance Located Init where locOf (Init _ _ _ _ _ l) = locOf l instance Located Typedef where locOf (Typedef _ _ _ l) = locOf l instance Located InitGroup where locOf (InitGroup _ _ _ l) = locOf l locOf (TypedefGroup _ _ _ l) = locOf l locOf (AntiDecl _ l) = locOf l locOf (AntiDecls _ l) = locOf l instance Located Field where locOf (Field _ _ _ l) = locOf l instance Located FieldGroup where locOf (FieldGroup _ _ l) = locOf l locOf (AntiSdecl _ l) = locOf l locOf (AntiSdecls _ l) = locOf l instance Located CEnum where locOf (CEnum _ _ l) = locOf l locOf (AntiEnum _ l) = locOf l locOf (AntiEnums _ l) = locOf l instance Located Attr where locOf (Attr _ _ l) = locOf l instance Located Param where locOf (Param _ _ _ l) = locOf l locOf (AntiParam _ l) = locOf l locOf (AntiParams _ l) = locOf l instance Located Params where locOf (Params _ _ l) = locOf l instance Located Func where locOf (Func _ _ _ _ _ l) = locOf l locOf (OldFunc _ _ _ _ _ _ l) = locOf l instance Located Definition where locOf (FuncDef _ l) = locOf l locOf (DecDef _ l) = locOf l locOf (EscDef _ l) = locOf l locOf (AntiFunc _ l) = locOf l locOf (AntiEsc _ l) = locOf l locOf (AntiEdecl _ l) = locOf l locOf (AntiEdecls _ l) = locOf l locOf (ObjCClassDec _ l) = locOf l locOf (ObjCClassIface _ _ _ _ _ _ l) = locOf l locOf (ObjCCatIface _ _ _ _ _ l) = locOf l locOf (ObjCProtDec _ l) = locOf l locOf (ObjCProtDef _ _ _ l) = locOf l locOf (ObjCClassImpl _ _ _ _ l) = locOf l locOf (ObjCCatImpl _ _ _ l) = locOf l locOf (ObjCSynDef _ l) = locOf l locOf (ObjCDynDef _ l) = locOf l locOf (ObjCMethDef _ _ l) = locOf l locOf (ObjCCompAlias _ _ l) = locOf l locOf (AntiObjCMeth _ l) = locOf l locOf (AntiObjCMeths _ l) = locOf l instance Located Stm where locOf (Label _ _ _ l) = locOf l locOf (Case _ _ l) = locOf l locOf (Default _ l) = locOf l locOf (Exp _ l) = locOf l locOf (Block _ l) = locOf l locOf (If _ _ _ l) = locOf l locOf (Switch _ _ l) = locOf l locOf (While _ _ l) = locOf l locOf (DoWhile _ _ l) = locOf l locOf (For _ _ _ _ l) = locOf l locOf (Goto _ l) = locOf l locOf (Continue l) = locOf l locOf (Break l) = locOf l locOf (Return _ l) = locOf l locOf (Pragma _ l) = locOf l locOf (Comment _ _ l) = locOf l locOf (AntiPragma _ l) = locOf l locOf (AntiComment _ _ l) = locOf l locOf (AntiStm _ l) = locOf l locOf (AntiStms _ l) = locOf l locOf (Asm _ _ _ _ _ _ l) = locOf l locOf (AsmGoto _ _ _ _ _ _ l) = locOf l locOf (ObjCTry _ _ _ l) = locOf l locOf (ObjCThrow _ l) = locOf l locOf (ObjCSynchronized _ _ l) = locOf l locOf (ObjCAutoreleasepool _ l) = locOf l instance Located BlockItem where locOf (BlockDecl _) = noLoc locOf (BlockStm _) = noLoc locOf (AntiBlockItem _ l) = locOf l locOf (AntiBlockItems _ l) = locOf l instance Located Const where locOf (IntConst _ _ _ l) = locOf l locOf (LongIntConst _ _ _ l) = locOf l locOf (LongLongIntConst _ _ _ l) = locOf l locOf (FloatConst _ _ l) = locOf l locOf (DoubleConst _ _ l) = locOf l locOf (LongDoubleConst _ _ l) = locOf l locOf (CharConst _ _ l) = locOf l locOf (StringConst _ _ l) = locOf l locOf (AntiConst _ l) = locOf l locOf (AntiInt _ l) = locOf l locOf (AntiUInt _ l) = locOf l locOf (AntiLInt _ l) = locOf l locOf (AntiULInt _ l) = locOf l locOf (AntiLLInt _ l) = locOf l locOf (AntiULLInt _ l) = locOf l locOf (AntiFloat _ l) = locOf l locOf (AntiDouble _ l) = locOf l locOf (AntiLongDouble _ l) = locOf l locOf (AntiChar _ l) = locOf l locOf (AntiString _ l) = locOf l instance Located Exp where locOf (Var _ l) = locOf l locOf (Const _ l) = locOf l locOf (BinOp _ _ _ l) = locOf l locOf (Assign _ _ _ l) = locOf l locOf (PreInc _ l) = locOf l locOf (PostInc _ l) = locOf l locOf (PreDec _ l) = locOf l locOf (PostDec _ l) = locOf l locOf (UnOp _ _ l) = locOf l locOf (SizeofExp _ l) = locOf l locOf (SizeofType _ l) = locOf l locOf (Cast _ _ l) = locOf l locOf (Cond _ _ _ l) = locOf l locOf (Member _ _ l) = locOf l locOf (PtrMember _ _ l) = locOf l locOf (Index _ _ l) = locOf l locOf (FnCall _ _ l) = locOf l locOf (CudaCall _ _ _ l) = locOf l locOf (Seq _ _ l) = locOf l locOf (CompoundLit _ _ l) = locOf l locOf (StmExpr _ l) = locOf l locOf (AntiExp _ l) = locOf l locOf (AntiArgs _ l) = locOf l locOf (BuiltinVaArg _ _ l) = locOf l locOf (BlockLit _ _ _ l) = locOf l locOf (ObjCMsg _ _ _ l) = locOf l locOf (ObjCLitConst _ _ l) = locOf l locOf (ObjCLitString _ l) = locOf l locOf (ObjCLitBool _ l) = locOf l locOf (ObjCLitArray _ l) = locOf l locOf (ObjCLitDict _ l) = locOf l locOf (ObjCLitBoxed _ l) = locOf l locOf (ObjCEncode _ l) = locOf l locOf (ObjCProtocol _ l) = locOf l locOf (ObjCSelector _ l) = locOf l instance Located BlockType where locOf (BlockVoid l) = locOf l locOf (BlockParam _ l) = locOf l locOf (BlockType _ l) = locOf l instance Located ExeConfig where locOf (ExeConfig _ _ _ _ l) = locOf l instance Located ObjCIvarDecl where locOf (ObjCIvarVisi _ l) = locOf l locOf (ObjCIvarDecl _ l) = locOf l instance Located ObjCVisibilitySpec where locOf (ObjCPrivate l) = locOf l locOf (ObjCPublic l) = locOf l locOf (ObjCProtected l) = locOf l locOf (ObjCPackage l) = locOf l instance Located ObjCIfaceDecl where locOf (ObjCIfaceProp _ _ l) = locOf l locOf (ObjCIfaceReq _ l) = locOf l locOf (ObjCIfaceMeth _ l) = locOf l locOf (ObjCIfaceDecl _ l) = locOf l locOf (AntiObjCProp _ l) = locOf l locOf (AntiObjCProps _ l) = locOf l locOf (AntiObjCIfaceDecl _ l) = locOf l locOf (AntiObjCIfaceDecls _ l) = locOf l instance Located ObjCPropAttr where locOf (ObjCGetter _ l) = locOf l locOf (ObjCSetter _ l) = locOf l locOf (ObjCReadonly l) = locOf l locOf (ObjCReadwrite l) = locOf l locOf (ObjCAssign l) = locOf l locOf (ObjCRetain l) = locOf l locOf (ObjCCopy l) = locOf l locOf (ObjCNonatomic l) = locOf l locOf (ObjCAtomic l) = locOf l locOf (ObjCStrong l) = locOf l locOf (ObjCWeak l) = locOf l locOf (ObjCUnsafeUnretained l) = locOf l locOf (AntiObjCAttr _ l) = locOf l locOf (AntiObjCAttrs _ l) = locOf l instance Located ObjCMethodReq where locOf (ObjCRequired l) = locOf l locOf (ObjCOptional l) = locOf l instance Located ObjCParam where locOf (ObjCParam _ _ _ _ l) = locOf l locOf (AntiObjCParam _ l) = locOf l locOf (AntiObjCParams _ l) = locOf l instance Located ObjCMethodProto where locOf (ObjCMethodProto _ _ _ _ _ _ l) = locOf l locOf (AntiObjCMethodProto _ l) = locOf l instance Located ObjCCatch where locOf (ObjCCatch _ _ l) = locOf l instance Located ObjCRecv where locOf (ObjCRecvSuper l) = locOf l locOf (ObjCRecvExp _ l) = locOf l locOf (AntiObjCRecv _ l) = locOf l instance Located ObjCArg where locOf (ObjCArg _ _ l) = locOf l locOf (AntiObjCArg _ l) = locOf l locOf (AntiObjCArgs _ l) = locOf l instance Located ObjCDictElem where locOf (ObjCDictElem _ _ l) = locOf l locOf (AntiObjCDictElems _ l) = locOf l instance Relocatable Id where reloc l (Id x0 _) = (Id x0 (fromLoc l)) reloc l (AntiId x0 _) = (AntiId x0 (fromLoc l)) instance Relocatable StringLit where reloc l (StringLit x0 x1 _) = (StringLit x0 x1 (fromLoc l)) instance Relocatable Storage where reloc l (Tauto _) = (Tauto (fromLoc l)) reloc l (Tregister _) = (Tregister (fromLoc l)) reloc l (Tstatic _) = (Tstatic (fromLoc l)) reloc l (Textern x0 _) = (Textern x0 (fromLoc l)) reloc l (Ttypedef _) = (Ttypedef (fromLoc l)) reloc l (T__block _) = (T__block (fromLoc l)) reloc l (TObjC__weak _) = (TObjC__weak (fromLoc l)) reloc l (TObjC__strong _) = (TObjC__strong (fromLoc l)) reloc l (TObjC__unsafe_unretained _) = (TObjC__unsafe_unretained (fromLoc l)) instance Relocatable TypeQual where reloc l (Tconst _) = (Tconst (fromLoc l)) reloc l (Tvolatile _) = (Tvolatile (fromLoc l)) reloc l (AntiTypeQual x0 _) = (AntiTypeQual x0 (fromLoc l)) reloc l (AntiTypeQuals x0 _) = (AntiTypeQuals x0 (fromLoc l)) reloc l (Tinline _) = (Tinline (fromLoc l)) reloc l (Trestrict _) = (Trestrict (fromLoc l)) reloc _ (TAttr x0) = (TAttr x0) reloc l (TCUDAdevice _) = (TCUDAdevice (fromLoc l)) reloc l (TCUDAglobal _) = (TCUDAglobal (fromLoc l)) reloc l (TCUDAhost _) = (TCUDAhost (fromLoc l)) reloc l (TCUDAconstant _) = (TCUDAconstant (fromLoc l)) reloc l (TCUDAshared _) = (TCUDAshared (fromLoc l)) reloc l (TCUDArestrict _) = (TCUDArestrict (fromLoc l)) reloc l (TCUDAnoinline _) = (TCUDAnoinline (fromLoc l)) reloc l (TCLprivate _) = (TCLprivate (fromLoc l)) reloc l (TCLlocal _) = (TCLlocal (fromLoc l)) reloc l (TCLglobal _) = (TCLglobal (fromLoc l)) reloc l (TCLconstant _) = (TCLconstant (fromLoc l)) reloc l (TCLreadonly _) = (TCLreadonly (fromLoc l)) reloc l (TCLwriteonly _) = (TCLwriteonly (fromLoc l)) reloc l (TCLkernel _) = (TCLkernel (fromLoc l)) instance Relocatable Sign where reloc l (Tsigned _) = (Tsigned (fromLoc l)) reloc l (Tunsigned _) = (Tunsigned (fromLoc l)) instance Relocatable TypeSpec where reloc l (Tvoid _) = (Tvoid (fromLoc l)) reloc l (Tchar x0 _) = (Tchar x0 (fromLoc l)) reloc l (Tshort x0 _) = (Tshort x0 (fromLoc l)) reloc l (Tint x0 _) = (Tint x0 (fromLoc l)) reloc l (Tlong x0 _) = (Tlong x0 (fromLoc l)) reloc l (Tlong_long x0 _) = (Tlong_long x0 (fromLoc l)) reloc l (Tfloat _) = (Tfloat (fromLoc l)) reloc l (Tdouble _) = (Tdouble (fromLoc l)) reloc l (Tlong_double _) = (Tlong_double (fromLoc l)) reloc l (Tstruct x0 x1 x2 _) = (Tstruct x0 x1 x2 (fromLoc l)) reloc l (Tunion x0 x1 x2 _) = (Tunion x0 x1 x2 (fromLoc l)) reloc l (Tenum x0 x1 x2 _) = (Tenum x0 x1 x2 (fromLoc l)) reloc l (Tnamed x0 x1 _) = (Tnamed x0 x1 (fromLoc l)) reloc l (T_Bool _) = (T_Bool (fromLoc l)) reloc l (Tfloat_Complex _) = (Tfloat_Complex (fromLoc l)) reloc l (Tdouble_Complex _) = (Tdouble_Complex (fromLoc l)) reloc l (Tlong_double_Complex _) = (Tlong_double_Complex (fromLoc l)) reloc l (Tfloat_Imaginary _) = (Tfloat_Imaginary (fromLoc l)) reloc l (Tdouble_Imaginary _) = (Tdouble_Imaginary (fromLoc l)) reloc l (Tlong_double_Imaginary _) = (Tlong_double_Imaginary (fromLoc l)) reloc l (TtypeofExp x0 _) = (TtypeofExp x0 (fromLoc l)) reloc l (TtypeofType x0 _) = (TtypeofType x0 (fromLoc l)) reloc l (Tva_list _) = (Tva_list (fromLoc l)) instance Relocatable DeclSpec where reloc l (DeclSpec x0 x1 x2 _) = (DeclSpec x0 x1 x2 (fromLoc l)) reloc l (AntiDeclSpec x0 _) = (AntiDeclSpec x0 (fromLoc l)) reloc l (AntiTypeDeclSpec x0 x1 x2 _) = (AntiTypeDeclSpec x0 x1 x2 (fromLoc l)) instance Relocatable ArraySize where reloc l (ArraySize x0 x1 _) = (ArraySize x0 x1 (fromLoc l)) reloc l (VariableArraySize _) = (VariableArraySize (fromLoc l)) reloc l (NoArraySize _) = (NoArraySize (fromLoc l)) instance Relocatable Decl where reloc l (DeclRoot _) = (DeclRoot (fromLoc l)) reloc l (Ptr x0 x1 _) = (Ptr x0 x1 (fromLoc l)) reloc l (Array x0 x1 x2 _) = (Array x0 x1 x2 (fromLoc l)) reloc l (Proto x0 x1 _) = (Proto x0 x1 (fromLoc l)) reloc l (OldProto x0 x1 _) = (OldProto x0 x1 (fromLoc l)) reloc l (AntiTypeDecl x0 _) = (AntiTypeDecl x0 (fromLoc l)) reloc l (BlockPtr x0 x1 _) = (BlockPtr x0 x1 (fromLoc l)) instance Relocatable Type where reloc l (Type x0 x1 _) = (Type x0 x1 (fromLoc l)) reloc l (AntiType x0 _) = (AntiType x0 (fromLoc l)) instance Relocatable Designator where reloc l (IndexDesignator x0 _) = (IndexDesignator x0 (fromLoc l)) reloc l (MemberDesignator x0 _) = (MemberDesignator x0 (fromLoc l)) instance Relocatable Designation where reloc l (Designation x0 _) = (Designation x0 (fromLoc l)) instance Relocatable Initializer where reloc l (ExpInitializer x0 _) = (ExpInitializer x0 (fromLoc l)) reloc l (CompoundInitializer x0 _) = (CompoundInitializer x0 (fromLoc l)) reloc l (AntiInit x0 _) = (AntiInit x0 (fromLoc l)) reloc l (AntiInits x0 _) = (AntiInits x0 (fromLoc l)) instance Relocatable Init where reloc l (Init x0 x1 x2 x3 x4 _) = (Init x0 x1 x2 x3 x4 (fromLoc l)) instance Relocatable Typedef where reloc l (Typedef x0 x1 x2 _) = (Typedef x0 x1 x2 (fromLoc l)) instance Relocatable InitGroup where reloc l (InitGroup x0 x1 x2 _) = (InitGroup x0 x1 x2 (fromLoc l)) reloc l (TypedefGroup x0 x1 x2 _) = (TypedefGroup x0 x1 x2 (fromLoc l)) reloc l (AntiDecl x0 _) = (AntiDecl x0 (fromLoc l)) reloc l (AntiDecls x0 _) = (AntiDecls x0 (fromLoc l)) instance Relocatable Field where reloc l (Field x0 x1 x2 _) = (Field x0 x1 x2 (fromLoc l)) instance Relocatable FieldGroup where reloc l (FieldGroup x0 x1 _) = (FieldGroup x0 x1 (fromLoc l)) reloc l (AntiSdecl x0 _) = (AntiSdecl x0 (fromLoc l)) reloc l (AntiSdecls x0 _) = (AntiSdecls x0 (fromLoc l)) instance Relocatable CEnum where reloc l (CEnum x0 x1 _) = (CEnum x0 x1 (fromLoc l)) reloc l (AntiEnum x0 _) = (AntiEnum x0 (fromLoc l)) reloc l (AntiEnums x0 _) = (AntiEnums x0 (fromLoc l)) instance Relocatable Attr where reloc l (Attr x0 x1 _) = (Attr x0 x1 (fromLoc l)) instance Relocatable Param where reloc l (Param x0 x1 x2 _) = (Param x0 x1 x2 (fromLoc l)) reloc l (AntiParam x0 _) = (AntiParam x0 (fromLoc l)) reloc l (AntiParams x0 _) = (AntiParams x0 (fromLoc l)) instance Relocatable Params where reloc l (Params x0 x1 _) = (Params x0 x1 (fromLoc l)) instance Relocatable Func where reloc l (Func x0 x1 x2 x3 x4 _) = (Func x0 x1 x2 x3 x4 (fromLoc l)) reloc l (OldFunc x0 x1 x2 x3 x4 x5 _) = (OldFunc x0 x1 x2 x3 x4 x5 (fromLoc l)) instance Relocatable Definition where reloc l (FuncDef x0 _) = (FuncDef x0 (fromLoc l)) reloc l (DecDef x0 _) = (DecDef x0 (fromLoc l)) reloc l (EscDef x0 _) = (EscDef x0 (fromLoc l)) reloc l (AntiFunc x0 _) = (AntiFunc x0 (fromLoc l)) reloc l (AntiEsc x0 _) = (AntiEsc x0 (fromLoc l)) reloc l (AntiEdecl x0 _) = (AntiEdecl x0 (fromLoc l)) reloc l (AntiEdecls x0 _) = (AntiEdecls x0 (fromLoc l)) reloc l (ObjCClassDec x0 _) = (ObjCClassDec x0 (fromLoc l)) reloc l (ObjCClassIface x0 x1 x2 x3 x4 x5 _) = (ObjCClassIface x0 x1 x2 x3 x4 x5 (fromLoc l)) reloc l (ObjCCatIface x0 x1 x2 x3 x4 _) = (ObjCCatIface x0 x1 x2 x3 x4 (fromLoc l)) reloc l (ObjCProtDec x0 _) = (ObjCProtDec x0 (fromLoc l)) reloc l (ObjCProtDef x0 x1 x2 _) = (ObjCProtDef x0 x1 x2 (fromLoc l)) reloc l (ObjCClassImpl x0 x1 x2 x3 _) = (ObjCClassImpl x0 x1 x2 x3 (fromLoc l)) reloc l (ObjCCatImpl x0 x1 x2 _) = (ObjCCatImpl x0 x1 x2 (fromLoc l)) reloc l (ObjCSynDef x0 _) = (ObjCSynDef x0 (fromLoc l)) reloc l (ObjCDynDef x0 _) = (ObjCDynDef x0 (fromLoc l)) reloc l (ObjCMethDef x0 x1 _) = (ObjCMethDef x0 x1 (fromLoc l)) reloc l (ObjCCompAlias x0 x1 _) = (ObjCCompAlias x0 x1 (fromLoc l)) reloc l (AntiObjCMeth x0 _) = (AntiObjCMeth x0 (fromLoc l)) reloc l (AntiObjCMeths x0 _) = (AntiObjCMeths x0 (fromLoc l)) instance Relocatable Stm where reloc l (Label x0 x1 x2 _) = (Label x0 x1 x2 (fromLoc l)) reloc l (Case x0 x1 _) = (Case x0 x1 (fromLoc l)) reloc l (Default x0 _) = (Default x0 (fromLoc l)) reloc l (Exp x0 _) = (Exp x0 (fromLoc l)) reloc l (Block x0 _) = (Block x0 (fromLoc l)) reloc l (If x0 x1 x2 _) = (If x0 x1 x2 (fromLoc l)) reloc l (Switch x0 x1 _) = (Switch x0 x1 (fromLoc l)) reloc l (While x0 x1 _) = (While x0 x1 (fromLoc l)) reloc l (DoWhile x0 x1 _) = (DoWhile x0 x1 (fromLoc l)) reloc l (For x0 x1 x2 x3 _) = (For x0 x1 x2 x3 (fromLoc l)) reloc l (Goto x0 _) = (Goto x0 (fromLoc l)) reloc l (Continue _) = (Continue (fromLoc l)) reloc l (Break _) = (Break (fromLoc l)) reloc l (Return x0 _) = (Return x0 (fromLoc l)) reloc l (Pragma x0 _) = (Pragma x0 (fromLoc l)) reloc l (Comment x0 x1 _) = (Comment x0 x1 (fromLoc l)) reloc l (AntiPragma x0 _) = (AntiPragma x0 (fromLoc l)) reloc l (AntiComment x0 x1 _) = (AntiComment x0 x1 (fromLoc l)) reloc l (AntiStm x0 _) = (AntiStm x0 (fromLoc l)) reloc l (AntiStms x0 _) = (AntiStms x0 (fromLoc l)) reloc l (Asm x0 x1 x2 x3 x4 x5 _) = (Asm x0 x1 x2 x3 x4 x5 (fromLoc l)) reloc l (AsmGoto x0 x1 x2 x3 x4 x5 _) = (AsmGoto x0 x1 x2 x3 x4 x5 (fromLoc l)) reloc l (ObjCTry x0 x1 x2 _) = (ObjCTry x0 x1 x2 (fromLoc l)) reloc l (ObjCThrow x0 _) = (ObjCThrow x0 (fromLoc l)) reloc l (ObjCSynchronized x0 x1 _) = (ObjCSynchronized x0 x1 (fromLoc l)) reloc l (ObjCAutoreleasepool x0 _) = (ObjCAutoreleasepool x0 (fromLoc l)) instance Relocatable BlockItem where reloc _ (BlockDecl x0) = (BlockDecl x0) reloc _ (BlockStm x0) = (BlockStm x0) reloc l (AntiBlockItem x0 _) = (AntiBlockItem x0 (fromLoc l)) reloc l (AntiBlockItems x0 _) = (AntiBlockItems x0 (fromLoc l)) instance Relocatable Const where reloc l (IntConst x0 x1 x2 _) = (IntConst x0 x1 x2 (fromLoc l)) reloc l (LongIntConst x0 x1 x2 _) = (LongIntConst x0 x1 x2 (fromLoc l)) reloc l (LongLongIntConst x0 x1 x2 _) = (LongLongIntConst x0 x1 x2 (fromLoc l)) reloc l (FloatConst x0 x1 _) = (FloatConst x0 x1 (fromLoc l)) reloc l (DoubleConst x0 x1 _) = (DoubleConst x0 x1 (fromLoc l)) reloc l (LongDoubleConst x0 x1 _) = (LongDoubleConst x0 x1 (fromLoc l)) reloc l (CharConst x0 x1 _) = (CharConst x0 x1 (fromLoc l)) reloc l (StringConst x0 x1 _) = (StringConst x0 x1 (fromLoc l)) reloc l (AntiConst x0 _) = (AntiConst x0 (fromLoc l)) reloc l (AntiInt x0 _) = (AntiInt x0 (fromLoc l)) reloc l (AntiUInt x0 _) = (AntiUInt x0 (fromLoc l)) reloc l (AntiLInt x0 _) = (AntiLInt x0 (fromLoc l)) reloc l (AntiULInt x0 _) = (AntiULInt x0 (fromLoc l)) reloc l (AntiLLInt x0 _) = (AntiLLInt x0 (fromLoc l)) reloc l (AntiULLInt x0 _) = (AntiULLInt x0 (fromLoc l)) reloc l (AntiFloat x0 _) = (AntiFloat x0 (fromLoc l)) reloc l (AntiDouble x0 _) = (AntiDouble x0 (fromLoc l)) reloc l (AntiLongDouble x0 _) = (AntiLongDouble x0 (fromLoc l)) reloc l (AntiChar x0 _) = (AntiChar x0 (fromLoc l)) reloc l (AntiString x0 _) = (AntiString x0 (fromLoc l)) instance Relocatable Exp where reloc l (Var x0 _) = (Var x0 (fromLoc l)) reloc l (Const x0 _) = (Const x0 (fromLoc l)) reloc l (BinOp x0 x1 x2 _) = (BinOp x0 x1 x2 (fromLoc l)) reloc l (Assign x0 x1 x2 _) = (Assign x0 x1 x2 (fromLoc l)) reloc l (PreInc x0 _) = (PreInc x0 (fromLoc l)) reloc l (PostInc x0 _) = (PostInc x0 (fromLoc l)) reloc l (PreDec x0 _) = (PreDec x0 (fromLoc l)) reloc l (PostDec x0 _) = (PostDec x0 (fromLoc l)) reloc l (UnOp x0 x1 _) = (UnOp x0 x1 (fromLoc l)) reloc l (SizeofExp x0 _) = (SizeofExp x0 (fromLoc l)) reloc l (SizeofType x0 _) = (SizeofType x0 (fromLoc l)) reloc l (Cast x0 x1 _) = (Cast x0 x1 (fromLoc l)) reloc l (Cond x0 x1 x2 _) = (Cond x0 x1 x2 (fromLoc l)) reloc l (Member x0 x1 _) = (Member x0 x1 (fromLoc l)) reloc l (PtrMember x0 x1 _) = (PtrMember x0 x1 (fromLoc l)) reloc l (Index x0 x1 _) = (Index x0 x1 (fromLoc l)) reloc l (FnCall x0 x1 _) = (FnCall x0 x1 (fromLoc l)) reloc l (CudaCall x0 x1 x2 _) = (CudaCall x0 x1 x2 (fromLoc l)) reloc l (Seq x0 x1 _) = (Seq x0 x1 (fromLoc l)) reloc l (CompoundLit x0 x1 _) = (CompoundLit x0 x1 (fromLoc l)) reloc l (StmExpr x0 _) = (StmExpr x0 (fromLoc l)) reloc l (AntiExp x0 _) = (AntiExp x0 (fromLoc l)) reloc l (AntiArgs x0 _) = (AntiArgs x0 (fromLoc l)) reloc l (BuiltinVaArg x0 x1 _) = (BuiltinVaArg x0 x1 (fromLoc l)) reloc l (BlockLit x0 x1 x2 _) = (BlockLit x0 x1 x2 (fromLoc l)) reloc l (ObjCMsg x0 x1 x2 _) = (ObjCMsg x0 x1 x2 (fromLoc l)) reloc l (ObjCLitConst x0 x1 _) = (ObjCLitConst x0 x1 (fromLoc l)) reloc l (ObjCLitString x0 _) = (ObjCLitString x0 (fromLoc l)) reloc l (ObjCLitBool x0 _) = (ObjCLitBool x0 (fromLoc l)) reloc l (ObjCLitArray x0 _) = (ObjCLitArray x0 (fromLoc l)) reloc l (ObjCLitDict x0 _) = (ObjCLitDict x0 (fromLoc l)) reloc l (ObjCLitBoxed x0 _) = (ObjCLitBoxed x0 (fromLoc l)) reloc l (ObjCEncode x0 _) = (ObjCEncode x0 (fromLoc l)) reloc l (ObjCProtocol x0 _) = (ObjCProtocol x0 (fromLoc l)) reloc l (ObjCSelector x0 _) = (ObjCSelector x0 (fromLoc l)) instance Relocatable BlockType where reloc l (BlockVoid _) = (BlockVoid (fromLoc l)) reloc l (BlockParam x0 _) = (BlockParam x0 (fromLoc l)) reloc l (BlockType x0 _) = (BlockType x0 (fromLoc l)) instance Relocatable ExeConfig where reloc l (ExeConfig x0 x1 x2 x3 _) = (ExeConfig x0 x1 x2 x3 (fromLoc l)) instance Relocatable ObjCIvarDecl where reloc l (ObjCIvarVisi x0 _) = (ObjCIvarVisi x0 (fromLoc l)) reloc l (ObjCIvarDecl x0 _) = (ObjCIvarDecl x0 (fromLoc l)) instance Relocatable ObjCVisibilitySpec where reloc l (ObjCPrivate _) = (ObjCPrivate (fromLoc l)) reloc l (ObjCPublic _) = (ObjCPublic (fromLoc l)) reloc l (ObjCProtected _) = (ObjCProtected (fromLoc l)) reloc l (ObjCPackage _) = (ObjCPackage (fromLoc l)) instance Relocatable ObjCIfaceDecl where reloc l (ObjCIfaceProp x0 x1 _) = (ObjCIfaceProp x0 x1 (fromLoc l)) reloc l (ObjCIfaceReq x0 _) = (ObjCIfaceReq x0 (fromLoc l)) reloc l (ObjCIfaceMeth x0 _) = (ObjCIfaceMeth x0 (fromLoc l)) reloc l (ObjCIfaceDecl x0 _) = (ObjCIfaceDecl x0 (fromLoc l)) reloc l (AntiObjCProp x0 _) = (AntiObjCProp x0 (fromLoc l)) reloc l (AntiObjCProps x0 _) = (AntiObjCProps x0 (fromLoc l)) reloc l (AntiObjCIfaceDecl x0 _) = (AntiObjCIfaceDecl x0 (fromLoc l)) reloc l (AntiObjCIfaceDecls x0 _) = (AntiObjCIfaceDecls x0 (fromLoc l)) instance Relocatable ObjCPropAttr where reloc l (ObjCGetter x0 _) = (ObjCGetter x0 (fromLoc l)) reloc l (ObjCSetter x0 _) = (ObjCSetter x0 (fromLoc l)) reloc l (ObjCReadonly _) = (ObjCReadonly (fromLoc l)) reloc l (ObjCReadwrite _) = (ObjCReadwrite (fromLoc l)) reloc l (ObjCAssign _) = (ObjCAssign (fromLoc l)) reloc l (ObjCRetain _) = (ObjCRetain (fromLoc l)) reloc l (ObjCCopy _) = (ObjCCopy (fromLoc l)) reloc l (ObjCNonatomic _) = (ObjCNonatomic (fromLoc l)) reloc l (ObjCAtomic _) = (ObjCAtomic (fromLoc l)) reloc l (ObjCStrong _) = (ObjCStrong (fromLoc l)) reloc l (ObjCWeak _) = (ObjCWeak (fromLoc l)) reloc l (ObjCUnsafeUnretained _) = (ObjCUnsafeUnretained (fromLoc l)) reloc l (AntiObjCAttr x0 _) = (AntiObjCAttr x0 (fromLoc l)) reloc l (AntiObjCAttrs x0 _) = (AntiObjCAttrs x0 (fromLoc l)) instance Relocatable ObjCMethodReq where reloc l (ObjCRequired _) = (ObjCRequired (fromLoc l)) reloc l (ObjCOptional _) = (ObjCOptional (fromLoc l)) instance Relocatable ObjCParam where reloc l (ObjCParam x0 x1 x2 x3 _) = (ObjCParam x0 x1 x2 x3 (fromLoc l)) reloc l (AntiObjCParam x0 _) = (AntiObjCParam x0 (fromLoc l)) reloc l (AntiObjCParams x0 _) = (AntiObjCParams x0 (fromLoc l)) instance Relocatable ObjCMethodProto where reloc l (ObjCMethodProto x0 x1 x2 x3 x4 x5 _) = (ObjCMethodProto x0 x1 x2 x3 x4 x5 (fromLoc l)) reloc l (AntiObjCMethodProto x0 _) = (AntiObjCMethodProto x0 (fromLoc l)) instance Relocatable ObjCCatch where reloc l (ObjCCatch x0 x1 _) = (ObjCCatch x0 x1 (fromLoc l)) instance Relocatable ObjCRecv where reloc l (ObjCRecvSuper _) = (ObjCRecvSuper (fromLoc l)) reloc l (ObjCRecvExp x0 _) = (ObjCRecvExp x0 (fromLoc l)) reloc l (AntiObjCRecv x0 _) = (AntiObjCRecv x0 (fromLoc l)) instance Relocatable ObjCArg where reloc l (ObjCArg x0 x1 _) = (ObjCArg x0 x1 (fromLoc l)) reloc l (AntiObjCArg x0 _) = (AntiObjCArg x0 (fromLoc l)) reloc l (AntiObjCArgs x0 _) = (AntiObjCArgs x0 (fromLoc l)) instance Relocatable ObjCDictElem where reloc l (ObjCDictElem x0 x1 _) = (ObjCDictElem x0 x1 (fromLoc l)) reloc l (AntiObjCDictElems x0 _) = (AntiObjCDictElems x0 (fromLoc l))