GDB.docx

download GDB.docx

of 61

Transcript of GDB.docx

  • 7/24/2019 GDB.docx

    1/61

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentang

    Penghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidak

    memberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

  • 7/24/2019 GDB.docx

    2/61

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang Berdasarkan

    Ketentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan Menteri

    Keuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

  • 7/24/2019 GDB.docx

    3/61

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)

    Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

  • 7/24/2019 GDB.docx

    4/61

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentang

    Penghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidak

    memberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    #ulisan ini membahas -enghitungan angsuran Pa!ak Penghasilan

    -asal 25 (selanjutnya disebut angsuran PPh pasal 25)terhada-

    a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak bank) badan usaha milik

  • 7/24/2019 GDB.docx

    5/61

    Negara) badan usaha milik daerah) (a!ib Pa!ak masuk bursa)

    dan (a!ib Pa!ak lainnya yang berdasarkan ketentuan -eraturan

    -erundangundangan harus membuat la-oran keuangan berkala1

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)

    Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang Berdasarkan

    Ketentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

  • 7/24/2019 GDB.docx

    6/61

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentang

    Penghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidak

    memberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

  • 7/24/2019 GDB.docx

    7/61

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang Berdasarkan

    Ketentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan Menteri

    Keuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

  • 7/24/2019 GDB.docx

    8/61

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)

    Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

  • 7/24/2019 GDB.docx

    9/61

    #ulisan ini membahas -enghitungan angsuran Pa!ak Penghasilan

    -asal 25 (selanjutnya disebut angsuran PPh pasal 25)terhada-

    a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak bank) badan usaha milik

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)

    Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang Berdasarkan

    Ketentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

  • 7/24/2019 GDB.docx

    10/61

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentang

    Penghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidak

    memberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

  • 7/24/2019 GDB.docx

    11/61

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang Berdasarkan

    Ketentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan Menteri

    Keuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

  • 7/24/2019 GDB.docx

    12/61

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)

    Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

  • 7/24/2019 GDB.docx

    13/61

    #ulisan ini membahas -enghitungan angsuran Pa!ak Penghasilan

    -asal 25 (selanjutnya disebut angsuran PPh pasal 25)terhada-

    a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak bank) badan usaha milik

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)

    Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang Berdasarkan

    Ketentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

  • 7/24/2019 GDB.docx

    14/61

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentang

    Penghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidak

    memberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

  • 7/24/2019 GDB.docx

    15/61

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang Berdasarkan

    Ketentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan Menteri

    Keuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

  • 7/24/2019 GDB.docx

    16/61

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)

    Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

  • 7/24/2019 GDB.docx

    17/61

    #ulisan ini membahas -enghitungan angsuran Pa!ak Penghasilan

    -asal 25 (selanjutnya disebut angsuran PPh pasal 25)terhada-

    a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak bank) badan usaha milik

  • 7/24/2019 GDB.docx

    18/61

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentang

    Penghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidak

    memberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

  • 7/24/2019 GDB.docx

    19/61

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang Berdasarkan

    Ketentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan Menteri

    Keuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

  • 7/24/2019 GDB.docx

    20/61

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)

    Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

  • 7/24/2019 GDB.docx

    21/61

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentang

    Penghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidak

    memberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    #ulisan ini membahas -enghitungan angsuran Pa!ak Penghasilan

    -asal 25 (selanjutnya disebut angsuran PPh pasal 25)terhada-

    a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak bank) badan usaha milik

  • 7/24/2019 GDB.docx

    22/61

  • 7/24/2019 GDB.docx

    23/61

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentang

    Penghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidak

    memberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

  • 7/24/2019 GDB.docx

    24/61

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang Berdasarkan

    Ketentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan Menteri

    Keuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala

  • 7/24/2019 GDB.docx

    25/61

    #ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)

    Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

  • 7/24/2019 GDB.docx

    26/61

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentang

    Penghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidak

    memberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan

    "alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    #ulisan ini membahas -enghitungan angsuran Pa!ak Penghasilan

    -asal 25 (selanjutnya disebut angsuran PPh pasal 25)terhada-

    a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak bank) badan usaha milik

  • 7/24/2019 GDB.docx

    27/61

  • 7/24/2019 GDB.docx

    28/61

    dan .(a!ib Pa!ak orang -ribadi -engusaha tertentu.

    Table of ContentsSummary of gdb....................................1

    1 2

    3

    4Free Software ....................................................... 1 Free Software Needs Free

    Documentation............................ 1 Contributors to

    gdb................................................. 3

    A Sample gdb Session.......................... 7 Getting In and Out

    of gdb ................... 11

    . 2.1 Invoking gdb ................................................. 11

    2.1.1 Choosing Files ........................................... 12

    2.1.2 Choosing Modes ......................................... 13

    2.1.3 What gdb Does During Startup.......................... 16

    . 2.2 Quitting gdb ................................................. 17

    . 2.3 Shell Commands.............................................. 17

    . 2.4 Logging Output............................................... 18

    gdb Commands................................ 19

    . 3.1 Command Syntax............................................. 19

  • 7/24/2019 GDB.docx

    29/61

    . 3.2 Command Completion ........................................ 19

    . 3.3 Getting Help.................................................. 22

    Running Programs Under gdb ............... 25. 4.1 Compiling for Debugging...................................... 25

    . 4.2 Starting your Program........................................ 26

    . 4.3 Your Programs Arguments ................................... 30

    . 4.4 Your Programs Environment.................................. 30

    . 4.5 Your Programs Working Directory............................ 31

    . 4.6 Your Programs Input and Output ............................ 32

    . 4.7 Debugging an Already-running Process........................ 32

    . 4.8 Killing the Child Process...................................... 33

    . 4.9 Debugging Multiple Inferiors and Programs.................... 33

    . 4.10 Debugging Programs with Multiple Threads.................. 36

    . 4.11 Debugging Forks............................................. 39

    . 4.12 Setting a Bookmark to Return to Later....................... 42

    4.12.1 A Non-obvious Bene t of Using Checkpoints............. 43

    i

    ii

    5

    Debugging with gdb Stopping and Continuing ..................... 45

    . 5.1 Breakpoints, Watchpoints, and Catchpoints ................... 45

  • 7/24/2019 GDB.docx

    30/61

    5.1.1 Setting Breakpoints ...................................... 46

    5.1.2 Setting Watchpoints...................................... 52

    5.1.3 Setting Catchpoints ...................................... 55

    5.1.4 Deleting Breakpoints..................................... 59

    5.1.5 Disabling Breakpoints.................................... 59

    5.1.6 Break Conditions......................................... 60

    5.1.7 Breakpoint Command Lists .............................. 62

    5.1.8 Dynamic Printf .......................................... 63

    5.1.9 How to save breakpoints to a le ......................... 65

    5.1.10 Static Probe Points ..................................... 65

    5.1.11 Cannot insert breakpoints............................. 67

    5.1.12 Breakpoint address adjusted... ........................ 67

    . 5.2 Continuing and Stepping...................................... 68

    . 5.3 Skipping Over Functions and Files ............................ 71

    . 5.4 Signals........................................................ 73

    . 5.5 Stopping and Starting Multi-thread Programs ................. 75

    5.5.1 All-Stop Mode ........................................... 76

    5.5.2 Non-Stop Mode.......................................... 77

    5.5.3 Background Execution ................................... 78

    5.5.4 Thread-Speci c Breakpoints.............................. 79

    5.5.5 Interrupted System Calls................................. 80

  • 7/24/2019 GDB.docx

    31/61

    5.5.6 Observer Mode........................................... 80

    Running programs backward................. 83 Recording

    Inferiors Execution and Replaying

    It.............................................. 85 Examining the

    Stack.......................... 93

    . 8.1 Stack Frames ................................................. 93

    . 8.2 Backtraces.................................................... 94

    . 8.3 Selecting a Frame............................................. 96

    . 8.4 Information About a Frame................................... 97

    . 8.5 Management of Frame Filters.................................. 98

    6 7

    8

    9Examining Source Files...................... 101

    10

    9.1 9.2

    9.3

    9.4 9.5 9.6

    Printing Source Lines ........................................ 101

    Specifying a Location ........................................ 102

    . 9.2.1 Linespec Locations...................................... 102

  • 7/24/2019 GDB.docx

    32/61

    . 9.2.2 Explicit Locations....................................... 103

    . 9.2.3 Address Locations....................................... 104

    Editing Source Files.......................................... 104 9.3.1 Choosing your

    Editor ................................... 105 Searching Source

    Files ....................................... 105 Specifying Source

    Directories................................. 105 Source and Machine

    Code.................................... 108

    Examining Data............................. 113

    . 10.1 Expressions................................................. 115

    . 10.2 Ambiguous Expressions..................................... 116

    . 10.3 Program Variables.......................................... 117

    . 10.4 Arti cial Arrays ............................................ 119

    . 10.5 Output Formats ............................................ 120

    . 10.6 Examining Memory......................................... 121

    . 10.7 Automatic Display.......................................... 124

    . 10.8 Print Settings............................................... 125

    . 10.9 Pretty Printing............................................. 133

    10.9.1 Pretty-Printer Introduction ............................ 133

    10.9.2 Pretty-Printer Example................................ 134

    10.9.3 Pretty-Printer Commands.............................. 134

    10.10 Value History.............................................. 136

    10.11 Convenience Variables ..................................... 137

    10.12 Convenience Functions..................................... 139

  • 7/24/2019 GDB.docx

    33/61

    10.13 Registers.................................................. 141

    10.14 Floating Point Hardware................................... 143

    10.15 Vector Unit................................................ 143

    10.16 Operating System Auxiliary Information................... 143

    10.17 Memory Region Attributes................................. 146

    10.17.1 Attributes ............................................ 146

    10.17.1.1 10.17.1.2 10.17.1.3

    Memory Access Mode............................ 147 Memory Access

    Size.............................. 147 Data Cache...................................... 147

    10.17.2 Memory Access Checking ............................. 147

    . 10.18 Copy Between Memory and a File ......................... 148

    . 10.19 How to Produce a Core File from Your Program ........... 148

    . 10.20 Character Sets............................................. 149

    . 10.21 Caching Data of Targets................................... 152

    . 10.22 Search Memory............................................ 153

    11 Debugging Optimized Code................ 155

    . 11.1 Inline Functions ............................................ 155

    . 11.2 Tail Call Frames............................................ 156

    iii

    iv Debugging with gdb 12 C Preprocessor Macros.....................

    159

    13 Tracepoints.................................. 163

  • 7/24/2019 GDB.docx

    34/61

    13.1 Commands to Set Tracepoints .............................. 163

    . 13.1.1 Create and Delete Tracepoints ......................... 164

    . 13.1.2 Enable and Disable Tracepoints........................ 166

    . 13.1.3 Tracepoint Passcounts ................................. 166

    . 13.1.4 Tracepoint Conditions.................................. 167

    . Latar Belakang

    . Menteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubahdengan Peraturan Menteri Keuangan Nomor 208/ PMK.03/

    2009 tentang Penghitungan Besarnya ngsuran Pa!akPenghasilan "alam#ahun Pa!ak Ber!alan $ang %arus"ibayar &endiri 'leh (a!ib Pa!ak Baru)Bank) &e*a +una,saha "engan %ak '-si) Badan ,saha Milik Negara) Badan,saha Milik "aerah) (a!ib Pa!ak Masuk Bursa) "an (a!ibPa!ak ainnya $ang Berdasarkan Ketentuan "iharuskanMembuat a-oran Keuangan Berkala #ermasuk (a!ib Pa!ak'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan

    Menteri Keuangan tersebut tidak memberikan ontoh-enghitungan angsuran Pa!ak Penghasilan.

    . #ulisan ini membahas -enghitungan angsuran Pa!ak

    Penghasilan -asal 25 (selanjutnya disebut angsuran PPh

    pasal 25)terhada- a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak

    bank) badan usaha milik Negara) badan usaha milik daerah)

    (a!ib Pa!ak masuk bursa) dan (a!ib Pa!ak lainnya yangberdasarkan ketentuan -eraturan -erundangundangan

    harus membuat la-oran keuangan berkala1 dan .(a!ib

    Pa!ak orang -ribadi -engusaha tertentu.

    .

  • 7/24/2019 GDB.docx

    35/61

    . 13.1.5 Trace State Variables .................................. 167

    . 13.1.6 Tracepoint Action Lists................................ 168

    . 13.1.7 Listing Tracepoints .................................... 170

    . 13.1.8 Listing Static Tracepoint Markers...................... 171

    . 13.1.9 Starting and Stopping Trace Experiments .............. 172

    . 13.1.10 Tracepoint Restrictions ............................... 174

    13.2 Using the Collected Data ................................... 175

    . 13.2.1 tfind n................................................ 175

    . 13.2.2 tdump.................................................. 177

    . 13.2.3 save tracepoints filename........................... 178

    . 13.3 Convenience Variables for Tracepoints....................... 178

    . 13.4 Using Trace Files ........................................... 179

    14 Debugging Programs That Use Overlays

    ............................................... 181

    . 14.1 How Overlays Work......................................... 181

    . 14.2 Overlay Commands......................................... 182

    . 14.3 Automatic Overlay Debugging .............................. 184

    . 14.4 Overlay Sample Program ................................... 185

    15 Using gdb with Di erent Languages . . . . . . 187

    15.1 Switching Between Source Languages ....................... 187

    . 15.1.1 List of Filename Extensions and Languages............. 187

  • 7/24/2019 GDB.docx

    36/61

    . 15.1.2 Setting the Working Language ......................... 188

    . 15.1.3 Having gdb Infer the Source Language................. 188

    . 15.2 Displaying the Language.................................... 188

    . 15.3 Type and Range Checking .................................. 189

    15.3.1 An Overview of Type Checking ........................ 189

    15.3.2 An Overview of Range Checking ....................... 190

    15.4 Supported Languages....................................... 191 15.4.1 C and C+

    +............................................. 191

    15.4.1.1 15.4.1.2 15.4.1.3 15.4.1.4 15.4.1.5 15.4.1.6 15.4.1.7 15.4.1.8

    C and C++ Operators ............................. 191 C and C++

    Constants ............................. 193 C++ Expressions .................................. 194

    C and C++ Defaults............................... 195 C and C++ Type and Range

    Checks............... 195 gdb and C........................................ 195 gdb Features

    for C++ ............................. 195 Decimal Floating Point format ....................

    197

    . 15.4.2 D...................................................... 197

    . 15.4.3 Go..................................................... 197

    . 15.4.4 Objective-C............................................ 198

    15.4.4.1 Method Names in Commands ..................... 198

    15.4.4.2 The Print Command With Objective-C............ 198 15.4.5 OpenCL

    C............................................. 199

    15.4.5.1 15.4.5.2 15.4.5.3

    OpenCL C Datatypes............................. 199 OpenCL C

    Expressions............................ 199 OpenCL C Operators .............................

    199

  • 7/24/2019 GDB.docx

    37/61

    15.4.6 Fortran................................................ 199

    15.4.6.1 15.4.6.2 15.4.6.3

    Fortran Operators and Expressions................ 199 Fortran

    Defaults .................................. 199 Special Fortran Commands........................

    200

    15.4.7 Pascal................................................. 200 15.4.8 Modula-

    2.............................................. 200

    15.4.8.1 15.4.8.2 15.4.8.3 15.4.8.4 15.4.8.5 15.4.8.6 15.4.8.7 15.4.8.8

    15.4.8.9

    Operators......................................... 200 Built-in Functions andProcedures................. 201 Constants......................................... 202 Modula-2

    Types................................... 203 Modula-2 Defaults ................................ 205

    Deviations from Standard Modula-2............... 205 Modula-2 Type and Range

    Checks................. 205 The Scope Operators :: and . .................... 205 gdb and

    Modula-2................................ 206

    15.4.9 Ada ................................................... 206

    15.4.9.1 15.4.9.2 15.4.9.3 15.4.9.4 15.4.9.5 15.4.9.6 15.4.9.7 15.4.9.8

    Introduction ...................................... 206 Omissions from

    Ada............................... 207 Additions to Ada ................................. 208

    Stopping at the Very Beginning ................... 209 Ada

    Exceptions................................... 210 Extensions for Ada

    Tasks ......................... 210 Tasking Support when Debugging Core Files . . . .

    . . 213 Tasking Support when using the Ravenscar Pro le

    ........................................................ 213 15.4.9.9 Known Peculiarities of AdaMode ................. 214 15.5 Unsupported Languages ....................................

    215

    16 Examining the Symbol Table .............. 217

    v

  • 7/24/2019 GDB.docx

    38/61

    vi Debugging with gdb 17 Altering Execution..........................

    225

    . 17.1 Assignment to Variables .................................... 225

    . 17.2 Continuing at a Di erent Address........................... 226

    . 17.3 Giving your Program a Signal............................... 227

    . 17.4 Returning from a Function.................................. 228

    . 17.5 Calling Program Functions.................................. 229

    . 17.6 Patching Programs ......................................... 230

    . 17.7 Compiling and injecting code in gdb........................ 230

    17.7.1 Compilation options for the compile command . . . . . . . . . 232

    17.7.2 Caveats when using the compile command............. 232

    17.7.3 Compiler search for the compile command............. 234

    18 gdb Files..................................... 237

    . 18.1 Commands to Specify Files ................................. 237

    . 18.2 File Caching................................................ 245

    . 18.3 Debugging Information in Separate Files .................... 246

    . 18.4 Debugging information in a special section .................. 249

    . 18.5 Index Files Speed Up gdb .................................. 250

    . 18.6 Errors Reading Symbol Files................................ 251

    . 18.7 GDB Data Files ............................................ 252

    19 Specifying a Debugging Target ............ 253

  • 7/24/2019 GDB.docx

    39/61

    . 19.1 Active Targets.............................................. 253

    . 19.2 Commands for Managing Targets ........................... 253

    . 19.3 Choosing Target Byte Order................................ 255

    20 Debugging Remote Programs.............. 257

    . 20.1 Connecting to a Remote Target............................. 257

    . 20.2 Sending les to a remote system ............................ 259

    . 20.3 Using the gdbserver Program .............................. 259

    20.3.1 Running gdbserver.................................... 259

    20.3.1.1 20.3.1.2 20.3.1.3 20.3.1.4

    Attaching to a Running Program.................. 260 Multi-Process Mode for

    gdbserver................ 261 TCP port allocation lifecycle of gdbserver . . . . . . . .

    261 Other Command-Line Arguments for gdbserver... 261

    . 20.3.2 Connecting to gdbserver .............................. 262

    . 20.3.3 Monitor Commands for gdbserver..................... 262

    . 20.3.4 Tracepoints support in gdbserver...................... 263

    . 20.4 Remote Con guration....................................... 264

    . 20.5 Implementing a Remote Stub ............................... 270

    20.5.1 What the Stub Can Do for You ........................ 271

    20.5.2 What You Must Do for the Stub....................... 27220.5.3 Putting it All Together................................. 273

    21 Con guration-Speci c Information........ 275

    21.1 Native...................................................... 275

  • 7/24/2019 GDB.docx

    40/61

    . 21.1.1 HP-UX................................................ 275

    . 21.1.2 BSD libkvm Interface.................................. 275

    . 21.1.3 SVR4 Process Information ............................. 275

    . 21.1.4 Features for Debugging djgpp Programs ............... 277

    . 21.1.5 Features for Debugging MS Windows PE Executables . . 279

    22

    21.4.2.1 Intel(R) Memory Protection Extensions (MPX). . . . 292

    . 21.4.3 Alpha.................................................. 293

    . 21.4.4 MIPS .................................................. 293

    . 21.4.5 HPPA................................................. 295

    . 21.4.6 Cell Broadband Engine SPU architecture............... 295

    . 21.4.7 PowerPC .............................................. 296

    . 21.4.8 Nios II................................................. 296

    Controlling gdb ............................. 297

    21.1.5.1 21.1.5.2 21.1.5.3

    Support for DLLs without Debugging Symbols..... 281 DLL Name Pre

    xes ............................... 281 Working with Minimal Symbols ................... 281

    21.1.6 Commands Speci c to gnu Hurd Systems.............. 282

    21.1.7 Darwin................................................ 284

    . 21.2 Embedded Operating Systems .............................. 285

    . 21.3 Embedded Processors....................................... 285

    21.3.1 ARM.................................................. 285

  • 7/24/2019 GDB.docx

    41/61

    21.3.2 Renesas M32R/SDI.................................... 287

    21.3.3 M68k.................................................. 287

    21.3.4 MicroBlaze ............................................ 287

    21.3.5 MIPS Embedded....................................... 288

    21.3.6 PowerPC Embedded ................................... 290

    21.3.7 Atmel AVR............................................ 291

    21.3.8 CRIS.................................................. 291

    21.3.9 Renesas Super-H....................................... 291

    21.4 Architectures ............................................... 292 21.4.1

    AArch64............................................... 292 21.4.2 x86 Architecture-speci c

    Issues......................... 292

    . 22.1 Prompt..................................................... 297

    . 22.2 Command Editing.......................................... 297

    . 22.3 Command History.......................................... 298

    . 22.4 Screen Size ................................................. 299

    . 22.5 Numbers ................................................... 300

    . 22.6 Con guring the Current ABI................................ 301

    . 22.7 Automatically loading associated les ....................... 302

    22.7.1 Automatically loading init le in the current directory . . 304

    22.7.2 Automatically loading thread debugging library . . . . . . . . 304

    22.7.3 Security restriction for auto-loading .................... 305

    22.7.4 Displaying les tried for auto-load...................... 306

  • 7/24/2019 GDB.docx

    42/61

    . 22.8 Optional Warnings and Messages............................ 307

    . 22.9 Optional Messages about Internal Happenings............... 308

    vii

    viii Debugging with gdb 22.10 Other Miscellaneous

    Settings............................... 313

    23 Extending gdb .............................. 315

    23.1 Canned Sequences of Commands............................ 315

    . 23.1.1 User-de ned Commands ............................... 315

    . 23.1.2 User-de ned Command Hooks.......................... 317

    . 23.1.3 Command Files........................................ 318

    . 23.1.4 Commands for Controlled Output...................... 319

    . 23.1.5 Controlling auto-loading native gdb scripts . . . . . . . . . . . . . 321

    23.2 Extending gdb using Python ............................... 321

    . 23.2.1 Python Commands .................................... 322

    . 23.2.2 Python API ........................................... 323

    23.2.2.1 23.2.2.2 23.2.2.3 23.2.2.4 23.2.2.5 23.2.2.6 23.2.2.7 23.2.2.8

    23.2.2.9 23.2.2.10 23.2.2.11 23.2.2.12 23.2.2.13 23.2.2.14 23.2.2.15

    23.2.2.16 23.2.2.17 23.2.2.18 23.2.2.19 23.2.2.20 23.2.2.21 23.2.2.22

    23.2.2.23 23.2.2.24 23.2.2.25 23.2.2.26 23.2.2.27 23.2.2.28 23.2.2.29

    23.2.2.30 23.2.2.31 23.2.2.32

    Basic Python ..................................... 323 Exception

    Handling............................... 326 Values From Inferior ..............................

    327 Types In Python.................................. 332 Pretty Printing

    API............................... 336 Selecting Pretty-Printers .......................... 337

    Writing a Pretty-Printer .......................... 338 Type Printing

  • 7/24/2019 GDB.docx

    43/61

    API................................ 340 Filtering Frames................................... 341

    Decorating Frames. .............................. 343 Writing a Frame

    Filter........................... 346 Unwinding Frames in Python .................... 350

    Xmethods In Python............................. 352 XmethodAPI.................................... 353 Writing an Xmethod............................. 354

    Inferiors In Python............................... 357 Events In

    Python................................ 358 Threads In Python............................... 361

    Commands In Python............................ 362 Parameters In

    Python............................ 366 Writing new convenience functions ...............

    368 Program Spaces In Python....................... 369 Obj les In

    Python............................... 370 Accessing inferior stack frames from

    Python. . . . . . 372 Accessing blocks from Python. ................... 375 Python

    representation of Symbols. ............... 377 Symbol table representation inPython............ 380 Manipulating line tables using Python............ 381

    Manipulating breakpoints using Python . . . . . . . . . . 382 Finish

    Breakpoints............................... 385 Python representation of lazy

    strings. ............ 386 Python representation of architectures . . . . . . . . . . . . 387

    . 23.2.3 Python Auto-loading................................... 387

    . 23.2.4 Python modules ....................................... 388

    23.2.4.1 gdb.printing....................................... 388 23.2.4.2 gdb.types

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh

    (a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidak

  • 7/24/2019 GDB.docx

    44/61

    memberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    #ulisan ini membahas -enghitungan angsuran Pa!ak Penghasilan

    -asal 25 (selanjutnya disebut angsuran PPh pasal 25)terhada-

    a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak bank) badan usaha milik

    Negara) badan usaha milik daerah) (a!ib Pa!ak masuk bursa)

    dan (a!ib Pa!ak lainnya yang berdasarkan ketentuan -eraturan

    -erundangundangan harus membuat la-oran keuangan berkala1

    dan .(a!ib Pa!ak orang -ribadi -engusaha tertentu.

    ......................................... 389

    23.2.4.3 gdb.prompt....................................... 390 23.3 Extending gdb using

    Guile ................................. 391

    . 23.3.1 Guile Introduction ..................................... 391

    . 23.3.2 Guile Commands ...................................... 391

    . 23.3.3 Guile API ............................................. 392

    23.3.3.1 23.3.3.2 23.3.3.3 23.3.3.4 23.3.3.5 23.3.3.6 23.3.3.7 23.3.3.823.3.3.9 23.3.3.10 23.3.3.11 23.3.3.12 23.3.3.13 23.3.3.14 23.3.3.15

    23.3.3.16 23.3.3.17 23.3.3.18 23.3.3.19 23.3.3.20 23.3.3.21 23.3.3.22

    23.3.3.23 23.3.3.24 23.3.3.25

    . 23.3.4 Guile

    . 23.3.5 Guile

    23.3.5.1 Guile Printing Module ............................ 441 23.3.5.2 Guile TypesModule............................... 441

    23.4 Auto-loading extensions..................................... 442

    . 23.4.1 The objfile-gdb.ext le ............................ 442

  • 7/24/2019 GDB.docx

    45/61

    . 23.4.2 The .debug_gdb_scripts section...................... 443

    23.4.2.1 Script File Entries................................. 443

    23.4.2.2 Script Text Entries................................ 444 23.4.3 Which avor to

    choose?................................ 444 23.5 Multiple Extension

    Languages .............................. 445 23.5.1 Python comes

    rst..................................... 445 23.6 Creating new spellings of existing

    commands................ 445

    24 Command Interpreters..................... 447

    Basic Guile ....................................... 392 Guile Con

    guration............................... 394 GDB Scheme Data Types .........................

    394 Guile Exception Handling......................... 396 Values From Inferior In

    Guile ..................... 397 Arithmetic In Guile............................... 403 Types In

    Guile.................................... 404 Guile Pretty Printing API.........................

    408 Selecting Guile Pretty-Printers .................... 410

    Writing a Guile Pretty-Printer ................... 411 Commands In

    Guile.............................. 413 Parameters In Guile.............................. 417

    Program Spaces In Guile......................... 419 Obj les In

    Guile................................. 420 Accessing inferior stack frames from Guile. . .. . . . . 421 Accessing blocks from Guile. ..................... 424 Guile

    representation of Symbols. ................. 425 Symbol table representation in

    Guile.............. 429 Manipulating breakpoints using Guile ............ 430 Guile

    representation of lazy strings. .............. 433 Guile representation of

    architectures.............. 434 Disassembly In Guile............................. 436 I/O

    Ports in Guile ............................... 437 Memory Ports in

    Guile........................... 437 Iterators In Guile ................................ 438 Auto-

    loading..................................... 440 Modules ......................................... 441

    ix

    x Debugging with gdb 25 gdb Text User Interface....................

    449

  • 7/24/2019 GDB.docx

    46/61

    . 25.1 TUI Overview .............................................. 449

    . 25.2 TUI Key Bindings.......................................... 450

    . 25.3 TUI Single Key Mode....................................... 451

    . 25.4 TUI-speci c Commands..................................... 451

    . 25.5 TUI Con guration Variables ................................ 453

    . 26 Using gdb under gnu Emacs............... 455

    . 27 The gdb/mi Interface....................... 457

    Function and Purpose............................................. 457 Notation andTerminology ........................................ 457 27.3 gdb/mi General

    Design..................................... 457

    27.3.1 Context management .................................. 458 27.3.1.1 Threads and

    Frames .............................. 458 27.3.1.2 Language .........................................

    459

    . 27.3.2 Asynchronous command execution and non-stop mode . . 459

    . 27.3.3 Thread groups......................................... 460

    27.4 gdb/mi Command Syntax.................................. 460

    . 27.4.1 gdb/mi Input Syntax.................................. 461

    . 27.4.2 gdb/mi Output Syntax ................................ 461

    . 27.5 gdb/mi Compatibility with CLI ............................ 463

    . 27.6 gdb/mi Development and Front Ends....................... 463

    . 27.7 gdb/mi Output Records.................................... 464

    27.7.1 gdb/mi Result Records................................ 464

    27.7.2 gdb/mi Stream Records ............................... 464

  • 7/24/2019 GDB.docx

    47/61

    27.7.3 gdb/mi Async Records ................................ 465

    27.7.4 gdb/mi Breakpoint Information........................ 468

    27.7.5 gdb/mi Frame Information ............................ 470

    27.7.6 gdb/mi Thread Information ........................... 470

    27.7.7 gdb/mi Ada Exception Information.................... 471

    27.8 27.9 27.10 27.11

    Simple Examples of gdb/mi Interaction..................... 471 gdb/mi Command

    Description Format...................... 472 gdb/mi Breakpoint

    Commands............................ 472 gdb/mi CatchpointCommands............................ 482

    . 27.11.1 Shared Library gdb/mi Catchpoints .................. 482

    . 27.11.2 Ada Exception gdb/mi Catchpoints................... 483

    . 27.12 gdb/mi Program Context ................................. 485

    . 27.13 gdb/mi Thread Commands................................ 487

    . 27.14 gdb/mi Ada Tasking Commands .......................... 489

    . 27.15 gdb/mi Program Execution................................ 490

    . 27.16 gdb/mi Stack Manipulation Commands.................... 497

    . 27.17 gdb/mi Variable Objects .................................. 502

    . 27.18 gdb/mi Data Manipulation................................ 513

    . 27.19 gdb/mi Tracepoint Commands ............................ 522

    . 27.20 gdb/mi Symbol Query Commands......................... 527

    . Latar Belakang

    . Menteri Keuangan telah mengeluarkan Peraturan Menteri

  • 7/24/2019 GDB.docx

    48/61

    Keuangan Nomor 255/PMK.03/2008 yang telah diubahdengan Peraturan Menteri Keuangan Nomor 208/ PMK.03/2009 tentang Penghitungan Besarnya ngsuran Pa!akPenghasilan "alam#ahun Pa!ak Ber!alan $ang %arus

    "ibayar &endiri 'leh (a!ib Pa!ak Baru)Bank) &e*a +una,saha "engan %ak '-si) Badan ,saha Milik Negara) Badan,saha Milik "aerah) (a!ib Pa!ak Masuk Bursa) "an (a!ibPa!ak ainnya $ang Berdasarkan Ketentuan "iharuskanMembuat a-oran Keuangan Berkala #ermasuk (a!ib Pa!ak'rang Pribadi Pengusaha #ertentu.Namun dalam PeraturanMenteri Keuangan tersebut tidak memberikan ontoh-enghitungan angsuran Pa!ak Penghasilan.

    . #ulisan ini membahas -enghitungan angsuran Pa!akPenghasilan -asal 25 (selanjutnya disebut angsuran PPh

    pasal 25)terhada- a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak

    bank) badan usaha milik Negara) badan usaha milik daerah)

    (a!ib Pa!ak masuk bursa) dan (a!ib Pa!ak lainnya yang

    berdasarkan ketentuan -eraturan -erundangundangan

    harus membuat la-oran keuangan berkala1 dan .(a!ib

    Pa!ak orang -ribadi -engusaha tertentu.

    .

    . 27.21 gdb/mi File Commands ................................... 527

    . 27.22 gdb/mi Target Manipulation Commands................... 529

    . 27.23 gdb/mi File Transfer Commands .......................... 533

    Contributors to gdb

    Richard Stallman was the original author of gdb, and of many other gnu

  • 7/24/2019 GDB.docx

    49/61

    programs. Many others have contributed to its development. This section

    attempts to credit major contrib- utors. One of the virtues of free software is

    that everyone is free to contribute to it; with regret, we cannot actually

    acknowledge everyone here. The le ChangeLog in the gdb distribution

    approximates a blow-by-blow account.

    Changes much prior to version 2.0 are lost in the mists of time.

    Plea: Additions to this section are particularly welcome. If you or your

    friends (or enemies, to be evenhanded) have been unfairly omitted from this

    list, we would like to add your names!

    So that they may not regard their many labors as thankless, we particularly

    thank those who shepherded gdb through major releases: Andrew Cagney(releases 6.3, 6.2, 6.1, 6.0, 5.3, 5.2, 5.1 and 5.0); Jim Blandy (release 4.18);

    Jason Molenda (release 4.17); Stan Shebs (release 4.14); Fred Fish (releases

    4.16, 4.15, 4.13, 4.12, 4.11, 4.10, and 4.9); Stu Grossman and John Gilmore

    (releases 4.8, 4.7, 4.6, 4.5, and 4.4); John Gilmore (releases 4.3, 4.2, 4.1, 4.0,

    and 3.9); Jim Kingdon (releases 3.5, 3.4, and 3.3); and Randy Smith (releases

    3.2, 3.1, and 3.0).

    Richard Stallman, assisted at various times by Peter TerMaat, Chris Hanson,

    and Richard Mlynarik, handled releases through 2.8.

    Michael Tiemann is the author of most of the gnu C++ support in gdb, with

    signi cant additional contributions from Per Bothner and Daniel Berlin. James

    Clark wrote the gnu C++ demangler. Early work on C++ was by Peter

    TerMaat (who also did much general update work leading to release 3.0).

    gdb uses the BFD subroutine library to examine multiple object- le formats;

    BFD was a joint project of David V. Henkel-Wallace, Rich Pixley, Steve

    Chamberlain, and John Gilmore.

    David Johnson wrote the original COFF support; Pace Willison did the

    original support for encapsulated COFF.

    Brent Benson of Harris Computer Systems contributed DWARF 2 support.

  • 7/24/2019 GDB.docx

    50/61

    Adam de Boor and Bradley Davis contributed the ISI Optimum V support.

    Per Bothner, Noboyuki Hikichi, and Alessandro Forin contributed MIPS

    support. Jean-Daniel Fekete contributed Sun 386i support. Chris Hanson

    improved the HP9000 support. Noboyuki

    4 Debugging with gdb

    Hikichi and Tomoyuki Hasei contributed Sony/News OS 3 support. David

    Johnson con- tributed Encore Umax support. Jyrki Kuoppala contributed

    Altos 3068 support. Je Law contributed HP PA and SOM support. Keith

    Packard contributed NS32K support. Doug Rabson contributed Acorn Risc

    Machine support. Bob Rusk contributed Harris Nighthawk CX-UX support.

    Chris Smith contributed Convex support (and Fortran de- bugging). Jonathan

    Stone contributed Pyramid support. Michael Tiemann contributed SPARCsupport. Tim Tucker contributed support for the Gould NP1 and Gould

    Powern- ode. Pace Willison contributed Intel 386 support. Jay Vosburgh

    contributed Symmetry support. Marko Mlinar contributed OpenRISC 1000

    support.

    Andreas Schwab contributed M68K gnu/Linux support.

    Rich Schaefer and Peter Schauer helped with support of SunOS shared

    libraries.

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan MenteriKeuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)

    Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

  • 7/24/2019 GDB.docx

    51/61

    #ulisan ini membahas -enghitungan angsuran Pa!ak Penghasilan

    -asal 25 (selanjutnya disebut angsuran PPh pasal 25)terhada-

    a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak bank) badan usaha milik

    Negara) badan usaha milik daerah) (a!ib Pa!ak masuk bursa)

    dan (a!ib Pa!ak lainnya yang berdasarkan ketentuan -eraturan

    -erundangundangan harus membuat la-oran keuangan berkala1

    dan .(a!ib Pa!ak orang -ribadi -engusaha tertentu.

    Jay Fenlason and Roland McGrath ensured that gdb and GAS agree aboutseveral machine instruction sets.

    Patrick Duval, Ted Goldstein, Vikram Koka and Glenn Engel helped develop

    remote debugging. Intel Corporation, Wind River Systems, AMD, and ARM

    contributed remote debugging modules for the i960, VxWorks, A29K UDI,

    and RDI targets, respectively.

    Brian Fox is the author of the readline libraries providing command-line

    editing and command history.

    Andrew Beers of SUNY Bu alo wrote the language-switching code, the

    Modula-2 sup- port, and contributed the Languages chapter of this manual.

    Fred Fish wrote most of the support for Unix System Vr4. He also enhanced

    the command-completion support to cover C++ overloaded symbols.

    Hitachi America (now Renesas America), Ltd. sponsored the support for

    H8/300, H8/500, and Super-H processors.

    NEC sponsored the support for the v850, Vr4xxx, and Vr5xxx processors.

    Mitsubishi (now Renesas) sponsored the support for D10V, D30V, and

    M32R/D proces- sors.

    Toshiba sponsored the support for the TX39 Mips processor.

  • 7/24/2019 GDB.docx

    52/61

    Matsushita sponsored the support for the MN10200 and MN10300

    processors.

    Fujitsu sponsored the support for SPARClite and FR30 processors.

    Kung Hsu, Je Law, and Rick Sladkey added support for hardware

    watchpoints.

    Michael Snyder added support for tracepoints.

    Stu Grossman wrote gdbserver.

    Jim Kingdon, Peter Schauer, Ian Taylor, and Stu Grossman made nearly

    innumerable bug xes and cleanups throughout gdb.

    The following people at the Hewlett-Packard Company contributed support

    for the PA- RISC 2.0 architecture, HP-UX 10.20, 10.30, and 11.0 (narrow

    mode), HPs implementation of kernel threads, HPs aC++ compiler, and the

    Text User Interface (nee Terminal User Interface): Ben Krepp, Richard Title,

    John Bishop, Susan Macchia, Kathy Mann, Satish Pai, India Paul, Steve

    Rehrauer, and Elena Zannoni. Kim Haase provided HP-speci c information in

    this manual.

    DJ Delorie ported gdb to MS-DOS, for the DJGPP project. Robert Hoehnemade signi cant contributions to the DJGPP port.

    Summary of gdb 5

    Cygnus Solutions has sponsored gdb maintenance and much of its

    development since 1991. Cygnus engineers who have worked on gdb fulltime

    include Mark Alexander, Jim Blandy, Per Bothner, Kevin Buettner, Edith

    Epstein, Chris Faylor, Fred Fish, Martin Hunt, Jim Ingham, John Gilmore,

    Stu Grossman, Kung Hsu, Jim Kingdon, John Metzler, Fernando Nasser, Georey Noer, Dawn Perchik, Rich Pixley, Zdenek Radouch, Keith Seitz, Stan

    Shebs, David Taylor, and Elena Zannoni. In addition, Dave Brolley, Ian

    Carmichael, Steve Chamberlain, Nick Clifton, JT Conklin, Stan Cox, DJ

    Delorie, Ulrich Drepper, Frank Eigler, Doug Evans, Sean Fagan, David

    Henkel-Wallace, Richard Henderson, Je Holcomb, Je Law, Jim Lemke, Tom

  • 7/24/2019 GDB.docx

    53/61

    Lord, Bob Manson, Michael Meissner, Jason Merrill, Catherine Moore, Drew

    Moseley, Ken Raeburn, Gavin Romig-Koch, Rob Savoye, Jamie Smith, Mike

    Stump, Ian Taylor, Angela Thomas, Michael Tiemann, Tom Tromey, Ron

    Unrau, Jim Wilson, and David Zuhn have made contributions both large and

    small.

    Andrew Cagney, Fernando Nasser, and Elena Zannoni, while working for

    Cygnus Solu- tions, implemented the original gdb/mi interface.

    Jim Blandy added support for preprocessor macros, while working for Red

    Hat.

    Andrew Cagney designed gdbs architecture vector. Many people including

    Andrew Cagney, Stephane Carrez, Randolph Chung, Nick Du ek, RichardHenderson, Mark Ket- tenis, Grace Sainsbury, Kei Sakamoto, Yoshinori

    Sato, Michael Snyder, Andreas Schwab, Jason Thorpe, Corinna Vinschen,

    Ulrich Weigand, and Elena Zannoni, helped with the migration of old

    architectures to this new framework.

    Andrew Cagney completely re-designed and re-implemented gdbs unwinder

    framework, this consisting of a fresh new design featuring frame IDs,

    independent frame sni ers, and the sentinel frame. Mark Kettenis

    implemented the dwarf 2 unwinder, Je Johnston the libunwind unwinder, andAndrew Cagney the dummy, sentinel, tramp, and trad unwinders. The

    architecture-speci c changes, each involving a complete rewrite of the

    architectures frame code, were carried out by Jim Blandy, Joel Brobecker,

    Kevin Buettner, Andrew Cagney, Stephane Carrez, Randolph Chung, Orjan

    Friberg, Richard Henderson, Daniel Jacobowitz, Je Johnston, Mark Kettenis,

    Theodore A. Roth, Kei Sakamoto, Yoshinori Sato, Michael Snyder, Corinna

    Vinschen, and Ulrich Weigand.

    Christian Zankel, Ross Morley, Bob Wilson, and Maxim Grigoriev fromTensilica, Inc. contributed support for Xtensa processors. Others who have

    worked on the Xtensa port of gdb in the past include Steve Tjiang, John

    Newlin, and Scott Foehner.

    Michael Eager and sta of Xilinx, Inc., contributed support for the Xilinx

  • 7/24/2019 GDB.docx

    54/61

    MicroBlaze architecture.

    Chapter 1: A Sample gdb Session 7

    1 A Sample gdb SessionYou can use this manual at your leisure to read all about gdb. However, a

    handful of commands are enough to get started using the debugger. This

    chapter illustrates those commands.

    In this sample session, we emphasize user input like this: input, to make it

    easier to pick out from the surrounding output.

    One of the preliminary versions of gnu m4 (a generic macro processor)

    exhibits the following bug: sometimes, when we change its quote strings

    from the default, the commands used to capture one macro de nition within

    another stop working. In the following short m4 session, we de ne a macro

    foo which expands to 0000; we then use the m4 built-in defn to de ne bar as

    the same thing. However, when we change the open quote string to

    Latar BelakangMenteri Keuangan telah mengeluarkan Peraturan Menteri

    Keuangan Nomor 255/PMK.03/2008 yang telah diubah denganPeraturan Menteri Keuangan Nomor 208/ PMK.03/ 2009 tentangPenghitungan Besarnya ngsuran Pa!ak Penghasilan"alam#ahun Pa!ak Ber!alan $ang %arus "ibayar &endiri 'leh(a!ib Pa!ak Baru)Bank) &e*a +una ,saha "engan %ak '-si)Badan ,saha Milik Negara) Badan ,saha Milik "aerah) (a!ibPa!ak Masuk Bursa) "an (a!ib Pa!ak ainnya $ang BerdasarkanKetentuan "iharuskan Membuat a-oran Keuangan Berkala#ermasuk (a!ib Pa!ak 'rang Pribadi Pengusaha #ertentu.Namun dalam Peraturan Menteri Keuangan tersebut tidakmemberikan ontoh -enghitungan angsuran Pa!ak Penghasilan.

    #ulisan ini membahas -enghitungan angsuran Pa!ak Penghasilan

    -asal 25 (selanjutnya disebut angsuran PPh pasal 25)terhada-

  • 7/24/2019 GDB.docx

    55/61

    a. (a!ib Pa!ak baru1 b. (a!ib Pa!ak bank) badan usaha milik

    Negara) badan usaha milik daerah) (a!ib Pa!ak masuk bursa)

    dan (a!ib Pa!ak lainnya yang berdasarkan ketentuan -eraturan

    -erundangundangan harus membuat la-oran keuangan berkala1

    dan .(a!ib Pa!ak orang -ribadi -engusaha tertentu.

    and the close quote string to , the same procedure

    fails to de ne a new synonym baz:

    $ cd gnu/m4$ ./m4 de ne(foo,0000)

    foo

    0000

    de ne(bar,defn(foo))

    bar

    0000 changequote(,)

    de ne(baz,defn(foo))bazCtrl-dm4: End of input: 0: fatal error: EOF in

    string

    Let us use gdb to try to see what is going on.

    $ gdb m4gdb is free software and you are welcome to distribute copies

    of it under certain conditions; type "show copying" to see

    the conditions.There is absolutely no warranty for gdb; type "show warranty"

    for details.

    gdb 7.10.50.20151203-cvs, Copyright 1999 Free Software Foundation, Inc... (gdb)

    gdb reads only enough symbol data to know where to nd the rest when

    needed; as a result, the rst prompt comes up very quickly. We now tell gdb to

    use a narrower display width than usual, so that examples t in this manual.

    (gdb) set width 70

  • 7/24/2019 GDB.docx

    56/61

    We need to see how the m4 built-in changequote works. Having looked at the

    source, we know the relevant subroutine is m4_changequote, so we set a

    breakpoint there with the gdb break command.

    (gdb) break m4 changequoteBreakpoint 1 at 0x62f4: file builtin.c, line 879.

    Using the run command, we start m4 running under gdb control; as long as

    control does not reach the m4_changequote subroutine, the program runs as

    usual:

    8

    Debugging with gdb

    (gdb) runStarting program: /work/Editorial/gdb/gnu/m4/m4 de ne(foo,0000)

    foo

    0000

    To trigger the breakpoint, we call changequote. gdb suspends execution of

    m4, displaying information about the context where it stops.

    changequote(,)

    Breakpoint 1, m4_changequote (argc=3, argv=0x33c70)

    at builtin.c:879

    879 if (bad_argc(TOKEN_DATA_TEXT(argv[0]),argc,1,3))

    Now we use the command n (next) to advance execution to the next line of

    the current function.

    (gdb) n882 set_quotes((argc >= 2) ? TOKEN_DATA_TEXT(argv[1])\

    : nil,

    set_quotes looks like a promising subroutine. We can go into it by using the

    command s (step) instead of next. step goes to the next line to be executed in

    any subroutine, so it steps into set_quotes.

    (gdb) sset_quotes (lq=0x34c78 "", rq=0x34c88 "")

  • 7/24/2019 GDB.docx

    57/61

    at input.c:530

    530 if (lquote != def_lquote)

    The display that shows the subroutine where m4 is now suspended (and its

    arguments) is called a stack frame display. It shows a summary of the stack.

    We can use the backtrace command (which can also be spelled bt), to seewhere we are in the stack as a whole: the backtrace command displays a stack

    frame for each active subroutine.

    (gdb) bt#0 set_quotes (lq=0x34c78 "", rq=0x34c88 "")

    at input.c:530

    #1 0x6344 in m4_changequote (argc=3, argv=0x33c70)

    at builtin.c:882

    #2 0x8174 in expand_macro (sym=0x33320) at macro.c:242

    #3 0x7a88 in expand_token (obs=0x0, t=209696, td=0xf7fffa30)

    at macro.c:71

    #4 0x79dc in expand_input () at macro.c:40

    #5 0x2930 in main (argc=0, argv=0xf7fffb20) at m4.c:195

    We step t